css27 CSS์ ํฌ๊ธฐ๋จ์๋ค!(px, em, rem, vw ๋ฑ) CSS์ ๋ค์ํ ๋จ์๋ค์ ๋ํด์ ์์๋ณด์! ๊ทธ ์ค์์๋ ์ฃผ๋ก ์ฌ์ฉํ๋ ๊ฒ๋ค์ ์ ๋ฆฌํด๋ณด์๋ค. ์ฐ์ 2์ข ๋ฅ๋ก ๋๋ ์ ์๋ค. ์ ๋ ๋จ์ ๊ณ ์ ํ ํฌ๊ธฐ๋ฅผ ๊ฐ๋๋ค. ์ฆ, ํ ์์์ ์ํฅ ๋ฐ์ง ์๋๋ค. ์ข ๋ฅ px : ํฝ์ / ์ปดํจํฐ ์ด๋ฏธ์ง, ๋์คํ๋ ์ด๋ฅผ ๊ตฌ์ฑํ๊ณ ์๋ ์ต์ ๋จ์ ์๋ ๋จ์ ์์์ ์ง์ ๋ ํฌ๊ธฐ(์์๋ ํฌ๊ธฐ๊ฐ or ๊ธฐ๋ณธ ํฌ๊ธฐ๊ฐ)์ ๋ํ ์๋์ ์ธ ํฌ๊ธฐ๋ฅผ ๊ฐ๋๋ค. ๋ฐ์ํ ์น๋ฑ ์ํฉ์ ๋ง์ถ์ด ๋ณํด์ผํ๋ ๊ฒฝ์ฐ ํ์ฉํ๋ค. ์ข ๋ฅ % : ํผ์ผํธ / ์๋ ๋น์จ em : ๋ฐฐ์ / ์์์ ๋ฐ๋ผ์ ๊ฐ์ด ๊ณ์ ๋ณํ๋ค. (์ค์ฒฉ์ด ๋จ) rem : ์ต์์ ์์์ ๋ํ ๋ฐฐ์ / em๊ณผ ๋ค๋ฅด๊ฒ ์ ๋์ ๊ธฐ์ค์ด ์์ด ๋ค๋ฅธ ๊ฐ์ ๊ฐ๋ฆฌํค์ง ์๋๋ค. (16px์ด ๊ธฐ๋ณธ ์ค์ ์ด๋ฏ๋ก ์๋ฌด ์ค์ ์์ดํ๋ฉด 16px์ ์ฉ!) em vs rem ์์ 1. .. 2022. 1. 9. CSS ๊ฐ์ํด๋์ค (3)_์์ ๊ฐ์ํด๋์ค[2] (first-child, last-child) ์ ๋ฒ์๊ฐ์ ์ด์ด์ ์์๋ถ์ฌ ๊ฐ์ํด๋์ค! ์์๋ถ์ฌ ๊ฐ์ํด๋์ค๋html์ ๋ฐ๋ก ํด๋์ค๋ฅผ ๋ถ์ฌํ์ง ์์๋ ์ํ๋ ์์ ์ ๊ทผํ ์ ์๋๋ก ํ๊ธฐ ์ํด์ ์ฌ์ฉํ๋ค. first-child ํด๋น ์ ํ์์ ๊ฐ์ฅ ์ฒซ ๋ฒ์งธ ์์ last-child ํด๋น ์ ํ์์ ๊ฐ์ฅ ๋ง์ง๋ง ์์ ๋น์ฐํ์ง๋ง nth-child์ ๋ฌ๋ฆฌ ์์๋ฅผ ๋ปํ๋ ์ซ์๋ ํ์ํ์ง ์๋ค. ์์ ๊ณต์ง์ฌํญ ๊ฐค๋ฌ๋ฆฌ 2022 ์ ๋ ์ธ์ฌ ์๊ฐ์ ์ฒญ ๋ฐฉ๋ฒ ์๋ด ์ฅํ๊ธ ์ ์ฒญ๊ธฐ๊ฐ ์๋ด ๋ณตํ ์ ์ฒญ ์๋ด ๋๊ณ ๋ฐฉํ ๊ธฐ๊ฐ์ค ๋์๊ด ์ด์ ์๋ด ์ ์ฒด CSS์ฝ๋ .tab-inner { width: 400px; } .btn span { background-color: #ccc; display: inline-block; width: 120px; padding: 5px; font-weight:.. 2022. 1. 7. CSS ๊ฐ์ํด๋์ค (2)_์์ ๊ฐ์ํด๋์ค[1] (nth-child, nth-of-type) ์ด๋ฒ์๋ ์์๋ฅผ ๋ถ์ฌํ๋ ๊ฐ์ํด๋์ค๋ฅผ ์์๋ณด์๋ค. nth-child nth-child๋ ์์๋ฅผ ๋ถ์ฌํ๋ ๊ฐ์ํด๋์ค์ด๋ค. (๊ฐ์ฅ ๋ํ์ ์ธ ์์๋ถ์ฌ ๊ฐ์ํด๋์ค) ์ฌ์ฉ๋ฒ ์ ํ์:nth-child(์์) (๋์ด์ฐ๊ธฐ๋ ์ญ์ X) ์์ .box { border: 5px solid #000; width: 1000px; text-align: center; } .box div { border: 5px solid #000; margin: 10px; width: 200px; height: 200px; display: inline-block; } ์์ ๊ฐ์ด ๋ถ๋ชจ์์์ธ 'box'ํด๋์ค์ 4๊ฐ์ ์์์์๊ฐ ์๋ค. ์ด 4๊ฐ์ ์์์ ์์๋ฅผ ๋ถ์ฌํด๋ณด๋ฉด .box div:nth-child(1) { background-color: dod.. 2022. 1. 7. CSS ๊ฐ์ํด๋์ค (1)-2_๋ง์ฐ์ค ์ค๋ฒ ํจ๊ณผ(hover, transition) ์ถ๊ฐ! hover์ transition์ ๊ฐ์ง๊ณ ๋๋ค๊ฐ transition์ width์ height์ ์๋๋ฅผ ๋ค๋ฅด๊ฒ ์ ์ฉํ ์ ์๋ ๊ฒ์ ๋ฐ๊ฒฌํ๋ค. .parent { width: 400px; height: 200px; position: relative; } .child { position: absolute; width: 25px; height: 25px; top: 50%; left: 50%; transform: translate(-50%,-50%); background-color: blueviolet; transition: width 0.95s, height 1s; } .child:hover { width: 100%; height: 100%; background-color: rgb(216, 179, 250);.. 2022. 1. 7. CSS ๊ฐ์ํด๋์ค (1)_๋ง์ฐ์ค ์ค๋ฒ ํจ๊ณผ(hover, transition) ๋ง์ฐ์ค๊ฐ ์ฌ๋ผ๊ฐ์ ๋ ๋ณํ๋ฅผ ์ฃผ๋ ๊ฐ์ํด๋์ค์ ๋ํด์ ์์๋ณด์ hover aํ๊ทธ๋ก hover๋ฅผ ํ์ฉํด๋ณด์๋ค. ๋ค์ด๊ฐ๊ธฐ์ ์ aํ๊ทธ ๊ด๋ จ ์์๋ ๊ฒ 1. href ์์ฑ์ ๋น์๋๋ฉด jQuery๊ฐ ์๋ํ์ง ์๋๋ค. -> #none์ ๋ฃ์ด์ฃผ์! 2. body์ ์์ ์์ฑ์ ์ ์ฉ๋ฐ์ง ์๋๋ค. ์ฌ์ฉ๋ฒ ์ ํ์:hover ์์ฒ๋ผ ์ ํ์ ๋ค์ ๊ฐ์ํด๋์ค๋ฅผ ์ ์ด์ฃผ๋ฉด ๋๋๋ฐ ์ ํ์์ ๊ฐ์ํด๋์ค ์ฌ์ด์ ๋์ด์ฐ๊ธฐ๊ฐ ์์ผ๋ฉด ์๋๋ค! ์์1 ๊ณต์ง์ฌํญ Q&A ์ปค๋ฎค๋ํฐ body { background-color: #fff; color: #333; font-size: 15px; } a { color: #333; text-decoration: none; font-weight: 700; transition: 0.3s; } a:hover { .. 2022. 1. 7. CSS ํฌ์ง์ (3)_์ํ๋ ์์น์ ๋ฑ ๋ฐฐ์นํ๊ธฐ! ์ ๋ฒ์ ๋ค๋ค๋ ๊ฒ์ ์ด์ด์ ํฌ์ง์ ์ ๋ํด์ ๋ ์์๋ณด์๋ค. ๊ฐ๋จํ๊ฒ ๋ณต์ตํ๋ฉด HTML์์์ ์ขํ ๊ธฐ์ค์ ํญ์ ์ผ์ชฝ ์๋จ์ ๊ผญ์ง์ ์ด ๊ธฐ์ค์ด๋ค. ๊ทธ๋์ top, bottom, left, right์ ๊ฐ์ ๋ฃ์ด ์ฃผ๋ฉด ๊ทธ ๊ธฐ์ค์ด ํด๋น ๊ฐ์ ๋ฐฐ์น๊ฐ ๋๋ค. (top: 50%, left: 50% - ์ผ์ชฝ ์๋จ ๊ผญ์ง์ ์ด ๊ทธ ์ขํ์ ๋ฐฐ์น) ํฌ์ง์ ์ ์ ํด์ค ๋ ๊ฐ์ px ๋ฑ์ ์ ๋์ ์ธ ๊ฐ๊ณผ %๋ฑ์ ์๋์ ์ธ ๊ฐ์ ๋ฃ์ด ์ค ์ ์๋๋ฐ ์ด๋ ์ญ์ ์ ๋ง์ ๋ง์ถฐ์ ๋ฃ์ด์ฃผ๋ฉด ๋๋ค. ์๋ฅผ ๋ค์ด์ '๋๋ ์ด๊ฒ์ ๋ถ๋ชจ์์์ ์ ๊ฐ์ด๋ฐ์ ํญ์ ์์น์ํค๊ฒ ์ด!' ๋ผ๋ ์๋๋ก ๊ฐ์ ๋ฃ๋๋ค๋ฉด, ๋ถ๋ชจ์์์ ํฌ๊ธฐ์ ๋ฐ๋ผ์ ํด๋น ์์๊ฐ ๋ฐ๋๋ฉด ์๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ % ์ ๊ฐ์ ์๋์ ์ธ ๊ฐ์ ์ฌ์ฉํ๋ฉด ์ด๋ค ์ํฉ์๋ ์๋ํ ์์น์ ๋ฐฐ์น๋ฅผ ํ ์ ์์ ๊ฒ์ด.. 2022. 1. 6. CSS ํฌ์ง์ (2)_์๋์ผ๋ก ์ ๊ฐ์ด๋ฐ ๋ฐฐ์น? ์ ๋ฒ์ ๋ค๋ฃจ์๋ position ์์ฑ์ ์ด์ด์ ์ด์ผ๊ธฐ ํด๋ณด์! ๊ฐ๋จํ ๋ณต์ตํด๋ณด๋ฉด ๋ถ๋ชจ์์์ position: relative, ์์์์์ position: absolute๋ฅผ ์ ์ฉํด์ฃผ์ด์ผ ํ๋ค. ๋ํ ์ถ๊ฐ์ ์ผ๋ก html์์ผ๋ก๋ ๋ถ๋ชจ-์์ ๊ด๊ณ์ด์ด์ผ๋ง position์ด ์ ์ฉ์ด ๋๋ค! ๊ทธ ์ดํ์ top, bottom, left, right๋ฅผ ์ด์ฉํด ์ ํ ์ข ์ฐ์ ๋ฐฐ์น๋ฅผ ํ ์ ์๋ค. ๊ฐ๊ฐ์ ๊ธฐ์ค์ ์ ๋ค์๊ณผ ๊ฐ๋ค! px, % ๋ฑ์ผ๋ก ๊ฐ์ ๋ฃ์ด์ฃผ์ด๋ ๋๋ค. .parent { position: relative; width: 500px; height: 500px; border: 1px solid #000; } .child { position: absolute; background-color: steelblue; w.. 2022. 1. 6. CSS ํฌ์ง์ (1)_๋ถ๋ชจ์์ ์์์์ position ์์ฑ : static, fixed, relative, absolute ๊ทธ ์ค์์ ์ด๋ฒ์ ๋ค๋ฃฐ ๋ด์ฉ์ ์๋์ ๋๊ฐ์ง์ด๋ค. relative -> ๋ถ๋ชจ์์์! absolute -> ์์์์์! ์์ .parent { background-color: blueviolet; width: 600px; height: 400px; position: relative; } .child { background-color: rgb(140, 132, 190); width: 200px; height: 100px; position: absolute; } position์์ฑ์ ๋ถ๋ชจ์์์ relative, ์์์์์ absolute๋ก ์ง์ ํด์ฃผ์๋ค. ์ด๋ ๊ฒ๋ง ํด๋์ผ๋ฉด ์๋ฌด ๋ณํ๊ฐ ์๋ค. ์ขํ๋ฅผ ์ง์ ํด์ฃผ์ด์ผ ํ๋ค! ์ขํ๊ฐ์.. 2022. 1. 5. HTML ์๋ฉํฑ ํ๊ทธ (๋ ์ด์์ ์ค๊ณ) semantic : ์๋ฏธ๋ก ์ ์ธ, ์๋ฏธ๋ฅผ ๊ฐ์ง๊ณ ์๋ HTML5 ์ด์ ์ ๋ ์ด์์์ ๊ตฌ์ฑํ ๋ div์ ํด๋์ค๋ฅผ ๋ถ์ฌํ๋ฉฐ ๊ตฌ์ฑํ์๋ค. ์ด๋ htmlํ์ผ์ด ๊ธธ์ด์ง๊ณ div๋ฅผ ๊ณ์ ๋ฐ๋ณตํด์ ์ฌ์ฉํด์ผํ๋ค. ๊ทธ ์ดํ sementicํ๊ทธ์ ๋ฑ์ฅ์ผ๋ก ํจ์จ์ ์ด๊ณ ์ง๊ด์ ์ผ๋ก ๊ตฌ์ฑํ ์ ์๊ฒ๋์๋ค! ์ข ๋ฅ .container : ๊ฐ์ฅ ์์ section : ์ฃผ์ ๋ณ ์ปจํ ์ธ ์์ญ header : ํค๋ ์์ญ(๋ก๊ณ , ๋ฉ๋ด ๋ฑ) footer : ํธํฐ(์ ์ ์ ๋ณด ๋ฑ) aricle : ์ปจํ ์ธ ๋ด์ฉ nav : ๋ฌธ์ ๋งํฌ ํ์ main : ๋ฌธ์ ์ฃผ์ ๋ด์ฉ ์ง์ ๋จ๊ณ .container>section, header, footer>article>div ๋ ์ด์์ ๋ง๋ค์ด๋ณด๊ธฐ(๊ฐ์ํด๋์ค X) .container { border: 1px solid #.. 2022. 1. 5. ์ด์ 1 2 3 ๋ค์