๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

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.