๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Lect & Tip/html, css, scss

โœˆcss3 :not ์„ ํƒ์ž

by ๋‚ฏ์„ ๊ณต๊ฐ„2019 2019. 8. 30.

๋ชฉ์ฐจ

    css3๋ฅผ ์“ฐ๋ฉด css2์— ๋น„ํ•ด์„œ ํผ๋ธ”๋ฆฌ์…”๊ฐ€ ์›ํ•˜๋Š” ๊ฒฐ๊ณผ๋ฅผ ์–ป๊ธฐ๊ฐ€ ๊ต‰์žฅํžˆ ์ˆ˜์›”ํ•˜๋‹ค.

    ์˜ˆ์ „ ๊ฐ™์œผ๋ฉด ์Šคํฌ๋ฆฝํŠธ์˜ ๋„์›€์„ ๋ฐ›์•˜์–ด์•ผ ํ•  ์ผ์„ css๋งŒ์œผ๋กœ ์ฒ˜๋ฆฌ๊ฐ€ ๊ฐ€๋Šฅํ•ด์กŒ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

    display:flex, nth-child(), calc()์™€ ๋”๋ถˆ์–ด :not ์„ ํƒ์ž๋Š” ์ •๋ง ์ถ•๋ณต์ด๋‹ค.

    ์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ๊ฐ„๋‹จํ•˜๋‹ค.

    :not(.foo) {color:blue}

    ์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๋ฉด .foo ํด๋ž˜์Šค๊ฐ€ ์•„๋‹Œ ๋‹ค๋ฅธ ์—˜๋ ˆ๋จผํŠธ๋Š” ๋ชจ๋‘ ํ…์ŠคํŠธ ์ปฌ๋Ÿฌ ์ƒ‰์„ ํŒŒ๋ž€์ƒ‰์œผ๋กœ ๋ฐ”๊พธ๋ž€ ๋œป์ด๋‹ค.

    ์ข€ ๋” ์„ธ๋ถ„ํ™” ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

    div:not(.foo) { color:blue}

    div์ค‘์—์„œ fooํด๋ž˜์Šค๊ฐ€ ์—†๋Š” div๋Š” ํ…์ŠคํŠธ ์ปฌ๋Ÿฌ๋ฅผ ํŒŒ๋ž€์ƒ‰์œผ๋กœ ํ•˜๋ผ๋Š” ๋œป์ด๋‹ค.

    Elements๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํด๋ž˜์Šค, ID๋ฅผ ๋Œ€์ƒ์œผ๋กœ๋„ ์„ ์–ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์€ ๋‹น์—ฐํ•˜๋‹ค.

    .chartArea๋ผ๊ณ  ์„ ์–ธํ•œ ์—˜๋ ˆ๋จผํŠธ์— chartArea5๋ผ๋Š” ํด๋ž˜์Šค๋ฅผ ๋™์‹œ์— ๋ถ€์—ฌํ•œ ์—˜๋ ˆ๋จผํŠธ๋“ค์ด ์žˆ๋Š”๋ฐ, chartArea5๊ฐ€ ์ฃผ์–ด์ง€์ง€ ์•Š์€ chartArea ํด๋ž˜์Šค๋ฅผ ๊ฐ€์ง„ ์—˜๋ ˆ๋จผํŠธ์— ์†์„ฑ์„ ์ œ์–ดํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด

    .chartArea:not(.chartArea5){ flex-direction: column}

    ์ด๋ ‡๊ฒŒ ์‚ฌ์šฉํ•˜๋ฉด ๋œ๋‹ค.

    ์˜ˆ์ปจ๋ฐ ์ด ๋ฐฉ๋ฒ•์€ ๋ฐ˜์‘ํ˜•์—์„œ ๋งค์šฐ ์ค‘์š”ํ•˜๊ฒŒ ์‚ฌ์šฉ๋  ์ˆ˜ ์žˆ๋‹ค.

    ํŠน์ • ๋ ˆ์ด์•„์›ƒ์—์„œ๋Š” ์ขŒ์šฐ div๊ฐ€ 6:4์˜ ๋น„์œจ์„ ๊ฐ–๊ณ  ์žˆ๊ณ , chartArea5๋ฅผ ์ค€ div์— ๊ฐ์‹ธ์ ธ ์žˆ๋Š” flexItem๋“ค์€ 5:5์˜ ๋น„์œจ๋กœ ๊ฐ–๊ณ  ์žˆ๋Š”๋ฐ, 6:4์ธ ๊ฒฝ์šฐ์—๋Š” ํ•ด์ƒ๋„ 1340px์—์„œ flex-direction์„ row์—์„œ column์œผ๋กœ ๋ฐ”๊พธ๋Š”๋ฐ, chartArea5 ํด๋ž˜์Šค๊ฐ€ ๋ถ€์—ฌ๋œ ๋ ˆ์ด์•„์›ƒ์—์„œ๋Š” 1180px์—์„œ ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ฃผ๋ฉด ๋œ๋‹ค.

    HTML

    <div class="chartArea chartArea5">
      <div class="left">
        <div class="upper">
          <!-- //segment Header s-->
          <div class="segmentHeader">
            <div class="segmentTitle">
            <h3>์‹ค์  ํŠธ๋ Œ๋“œ ๊ทธ๋ž˜ํ”„</h3>
            </div>
            <div class="btnFarm">
            <ul class="btnFarmUL">

    CSS

    @media screen and (max-width:1340px) {
    	/* 6:4 ์ผ๋•Œ 1๋‹จ์œผ๋กœ ์ค„์–ด๋“œ๋Š” ์ตœ์ ์ง€์ . ์ปจํ…์ธ ๋‚˜ ํ—ค๋” ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ํญ ๋ณ€ํ™” ๊ฐ€๋Šฅ*/
    	.chartArea:not(.chartArea5){ flex-direction: column}
    	.chartArea:not(.chartArea5)>div{flex: 1}
    	.chartArea:not(.chartArea5) .left {margin-right: 0;}
    }
    @media screen and (max-width:1180px) {
    	/* 5:5 ์ผ๋•Œ 1๋‹จ์œผ๋กœ ์ค„์–ด๋“œ๋Š” ์ตœ์ ์ง€์ . ์ปจํ…์ธ ๋‚˜ ํ—ค๋” ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ํญ ๋ณ€ํ™” ๊ฐ€๋Šฅ*/
    	.chartArea.chartArea5{ flex-direction: column}
    	.chartArea.chartArea5>div{flex: 1}
    	.chartArea.chartArea5 .left {margin-right: 0;}
    }
    @media screen and (max-width:1115px) {
    	/* ์ตœ์ข…์ ์œผ๋กœ ์ด ์ดํ•˜๋Š” ํญ ๊ณ ์ •์— ๋Œ€ํ•œ ์˜ˆ์‹œ, ๊ณ ์ • ํ•ด์ƒ๋„๋Š” ๊ฒฐ์ •ํ•ด์„œ max๊ฐ’๊ณผ wrapper์˜ min๊ฐ’ ์ˆ˜์ • ํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.*/
    	.wrapper {min-width: 1095px;}
    }

    http://bcode.shop/html/my_vm.html 6:4ํ™”๋ฉด

    http://bcode.shop/html/my_vm5.html 5:5ํ™”๋ฉด.

    ๋ฐ˜์‘ํ˜•

    ๋Œ“๊ธ€