๐Ÿ“

6. declarations

์„ ์–ธ ๋ถ€๋ถ„์—์„œ ์ž˜๋ชป๋œ ๊ฐ’์ด ๋“ค์–ด๊ฐ€๋”๋ผ๋„ ์ „์ฒด๋ฅผ ์‹คํ–‰์‹œํ‚ค๋Š”๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ถ€๋ถ„๋งŒ ๋ฌดํšจ์ฒ˜๋ฆฌ๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

1. ๋‹จ์œ„

  • Absolute : cm, mm, px ๋“ฑ
  • Relative : em, rem, vw, vh ๋“ฑ
  • Percentage : %
ย 
CSS์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์—ฌ๋Ÿฌ ํฌ๊ธฐ์˜ ๋‹จ์œ„์— ๋Œ€ํ•ด์„œ ์‚ดํŽด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
๋‹จ์œ„๋Š” ๊ณ ์ •ํฌ๊ธฐ๋‹จ์œ„์™€ ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„๋กœ ๋‚˜๋ˆ„์–ด์ง€๋ฉฐ, ๊ณ ์ •ํฌ๊ธฐ๋‹จ์œ„์—๋Š” px, pt, pc, cm, mm, in์ด ์žˆ๊ณ , ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„์—๋Š” em, ex, rem, %, vh, vw, vmin, vmax, eh, ch๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ๋Š” ์ž์ฃผ ์“ฐ์ด๋Š” ๋‹จ์œ„์— ๋Œ€์„œ๋งŒ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
์ข€ ๋” ์„ธ๋ถ€์ ์ธ ๋‹จ์œ„๋Š” MDN์˜ ๊ณต์‹๋ฌธ์„œ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.
ย 

1. ๊ณ ์ • ํฌ๊ธฐ ๋‹จ์œ„

๊ณ ์ • ํฌ๊ธฐ ๋‹จ์œ„
๋‹จ์œ„
์„ค๋ช…
ํ”ฝ์…€(ํ™”์†Œ)
ํฌ์ธํŠธ
์ธ์น˜
์„ผํ‹ฐ๋ฏธํ„ฐ, ๋ฐ€๋ฆฌ๋ฏธํ„ฐ
px์€ ๊ณ ์ •ํฌ๊ธฐ๋‹จ์œ„๋กœ CSS์—์„œ ๋งŽ์ด ์“ฐ์ด๋Š” ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„์™€๋Š” ๋‹ฌ๋ฆฌ, ๊ณ ์ •๋œ ํฌ๊ธฐ๋ฅผ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๊ธ€์žํฌ๊ธฐ์˜ ๋ณ€ํ™”๊ฐ€ ์šฉ์ดํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ๊ธฐ๋ณธ px์˜ ํฌ๊ธฐ๋Š” 16px์ž…๋‹ˆ๋‹ค. ๊ฐ ์„ ํƒ์ž์— ๋Œ€ํ•ด ์›ํ•˜๋Š” px๊ฐ’์„ ์ง€์ •ํ•˜๋ฉด ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์Šต๋‹ˆ๋‹ค.
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>๊ณ ์ •ํฌ๊ธฐ ๋‹จ์œ„</title> <style> h1 { font-size: 20px; } p { font-size: 14px; } div{ font-size: 10px; } </style> </head> <body> <h1>[ch5_ex1]CSS ํฌ๊ธฐ๋‹จ์œ„์— ๋Œ€ํ•œ ์‹ค์Šต์ž…๋‹ˆ๋‹ค.</h1> <p>CSS ํฌ๊ธฐ๋‹จ์œ„ ์ฒซ๋ฒˆ์งธ px์— ๋Œ€ํ•œ ์‹ค์Šต ์˜ˆ์ œ์ž…๋‹ˆ๋‹ค.</p> <div>์ฒซ๋ฒˆ์งธ ์‹ค์Šต์€ px์˜ ํฌ๊ธฐ๋ฅผ ์•Œ์•„๋ด…๋‹ˆ๋‹ค.</div> </body> </html>
[์‹คํ–‰ํ™”๋ฉด]
notion imagenotion image
ย 

2. ๊ฐ€๋ณ€ ํฌ๊ธฐ ๋‹จ์œ„

ย 
em์€ ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„๋กœ ๋ฐฐ์ˆ˜๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. ๋ถ€๋ชจ์˜ font-size์— ๋”ฐ๋ผ ๊ธฐ์ค€์ ์„ ์„ธ์šฐ๋ฉฐ ๊ธฐ์ค€์ ์— ๋”ฐ๋ผ ํฌ๊ธฐ๊ฐ€ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>font</title> <style> body { font-size: 30px; } div { font-size: 0.8em; } p { font-size: 1.2em; } </style> </head> <body> <!-- body์˜ ํฌ๊ธฐ์ธ 30px์„ ๋”ฐ๋ฅธ๋‹ค. --> em์˜ ์ฒ˜์Œ ํฌ๊ธฐ๋Š” 30px ์ž…๋‹ˆ๋‹ค. <div> <!-- ๋ถ€๋ชจ body์˜ ํฌ๊ธฐ์ธ 30px์— div์˜ ํฌ๊ธฐ์ธ 0.8์„ ๊ณฑํ•œ๋‹ค. --> <br>em์˜ ํฌ๊ธฐ๋Š” 30 * 0.8 = 24px ์ž…๋‹ˆ๋‹ค. <div> <!-- ๋ถ€๋ชจ body์˜ ํฌ๊ธฐ์ธ 24px์— div์˜ ํฌ๊ธฐ์ธ 0.8์„ ๊ณฑํ•œ๋‹ค. --> <br>em์˜ ํฌ๊ธฐ๋Š” 24 * 0.8 = 19.2px ์ž…๋‹ˆ๋‹ค. <div> <!-- ๋ถ€๋ชจ div์˜ ํฌ๊ธฐ์ธ 19.2px์— div ํฌ๊ธฐ์ธ 0.8์„ ๊ณฑํ•œ๋‹ค. --> <br>em์˜ ํฌ๊ธฐ๋Š” 19.2 * 0.8 = 15.36px ์ž…๋‹ˆ๋‹ค. </div> </div> </div> <!-- ๋ถ€๋ชจ body์˜ ํฌ๊ธฐ์ธ 30px์— p์˜ ํฌ๊ธฐ์ธ 1.2์„ ๊ณฑํ•œ๋‹ค. --> <p>p์˜ ํฌ๊ธฐ๋Š” 30 * 1.2 = 36px ์ž…๋‹ˆ๋‹ค.</p> </body> </html>
[์‹คํ–‰ํ™”๋ฉด]
notion imagenotion image
ย 
em์—์„œ์˜ ๊ฐ’ 1์€ 100%์ž…๋‹ˆ๋‹ค. ์ฆ‰, ๋ถ€๋ชจ์˜ px๊ฐ’์„ 30px๋กœ ์ง€์ •ํ•˜๊ณ , ๊ทธ ์•„๋ž˜ ์ž์‹ div์˜ ๊ฐ’์— 0.8em์„ ์ง€์ •ํ•˜๋ฉด 30px * 0.8 = 24px๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.
๐Ÿ’ก
(๋ถ€๋ชจ์˜ ํฌ๊ธฐ๊ฐ’ * ์ž์‹์˜ em ๊ฐ’) = ์ž์‹์ด ๊ฐ€์ง€๊ฒŒ ๋  ํฌ๊ธฐ ๊ฐ’
์ด๋ฅผ ๋ณดํŽธํ™”ํ•˜๋ฉด ์œ„์˜ ๊ณต์‹์ด ์„ฑ๋ฆฝํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ชจ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์ž์‹์˜ ํฌ๊ธฐ ๊ฐ’์ด ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.
ย 
%๋Š” ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„๋กœ์จ ๋ฐฑ๋ถ„์œจ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋‹จ์œ„์ž…๋‹ˆ๋‹ค. %๋„ ๊ธฐ๋ณธ ์„ค์ •๋œ ํฌ๊ธฐ์—์„œ ์ƒ๋Œ€์ ์œผ๋กœ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ดˆ๊ธฐ ์„ค์ •๋œ ํฌ๊ธฐ๋Š” 100%์ž…๋‹ˆ๋‹ค.
ย 
๊ธฐ๋ณธ px์˜ ํฌ๊ธฐ๊ฐ€ 16px์ด๋ผ ํ–ˆ์œผ๋‹ˆ ํฐํŠธ์˜ ํฌ๊ธฐ๋ฅผ 75%๋ผ ์ •ํ•  ๊ฒฝ์šฐ,
16px * 0.75 = 12px๊ฐ€ ๋œ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด์„œ ์„ค๋ช…ํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> body { font-size: 30px; } div { font-size: 50%; } p { font-size: 110%; } </style> </head> <body> <!-- body์˜ ํฌ๊ธฐ์ธ 30px์„ ๋”ฐ๋ฅธ๋‹ค. --> %์˜ ์ฒ˜์Œ ํฌ๊ธฐ๋Š” 30px ์ž…๋‹ˆ๋‹ค. <div> <!-- ๋ถ€๋ชจ body์˜ ํฌ๊ธฐ์ธ 30px์— div์˜ ํฌ๊ธฐ์ธ 0.5์„ ๊ณฑํ•œ๋‹ค. --> <br>%์˜ ํฌ๊ธฐ๋Š” 30 * 0.5 = 15px ์ž…๋‹ˆ๋‹ค. </div> <!-- ๋ถ€๋ชจ body์˜ ํฌ๊ธฐ์ธ 30px์— p ํฌ๊ธฐ์ธ 1.1์„ ๊ณฑํ•œ๋‹ค. --> <p>p์˜ ํฌ๊ธฐ๋Š” 30 * 1.1 = 33px ์ž…๋‹ˆ๋‹ค.</p> </body> </html>
[์‹คํ–‰ํ™”๋ฉด]
notion imagenotion image
ย 
ย 
%์—์„œ์˜ ๊ฐ’ 100%์€ 1์ด๋‹ค. ์ฆ‰, ๋ถ€๋ชจ์˜ px๊ฐ’์„ 30px๋กœ ์ง€์ •ํ•˜๊ณ , ๊ทธ ์•„๋ž˜ ์ž์‹ div์˜ ๊ฐ’์„ 50%๋ฅผ ์ฃผ๊ฒŒ ๋˜๋ฉด 30px * 0.5 = 15px๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.
๐Ÿ’ก
๋ถ€๋ชจ์˜ ํฌ๊ธฐ & (์ž์‹์˜ %๊ฐ’/100) = ์ž์‹์ด ๊ฐ€์ง€๊ฒŒ ๋  px ๊ฐ’
์ด๋ฅผ ๋ณดํŽธํ™”ํ•˜๋ฉด ์œ„์˜ ๊ณต์‹์ด ์„ฑ๋ฆฝํ•˜๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. em๊ณผ ๊ฐ™์ด ๊ฐ€๋ณ€ํฌ๊ธฐ๋‹จ์œ„์ด๊ธฐ ๋•Œ๋ฌธ์— ๋ถ€๋ชจ์˜ ํฌ๊ธฐ์— ๋”ฐ๋ผ ์ž์‹์˜ ํฌ๊ธฐ ๊ฐ’์ด ๋‹ฌ๋ผ์ง€๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.
ย 
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> body{ font-size: 10px; } .one{ font-size: 32px; } .two{ font-size: 2em; } .three{ font-size: 2rem; } .four{ width: 50%; height: 100px; background: red; } .five{ width: 50vw; /*vh(๋†’์ด), vw(๋„“์ด)*/ height: 100px; background: aqua; } .six{ width: 500px; } </style> </head> <body> <!-- font-size : 16px --> <div class="two"> <!-- font-size : 32px --> <div class="two"> <!-- font-size : 64px --> <div class="two"> <!-- font-size : 128px --> hello </div> </div> </div> <!-- font-size : 16px --> <div class="two"> <!-- font-size : 32px --> <div class="two"> <!-- font-size : 64px --> <div class="three"> <!-- font-size : 32px --> hello </div> </div> </div> <div class="six"> <div class="four">hello</div> </div> <div class="four"></div> <div class="five">hello</div> <div class="six"> <div class="five">hello</div> </div> <h2>๊ณ ์ • ํฌ๊ธฐ ๋‹จ์œ„</h2> <p>px</p> <h2>๊ฐ€๋ณ€ ํฌ๊ธฐ ๋‹จ์œ„</h2> <p>em, rem, %, vw, vh</p> </body> </html>
ย 
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Document</title> <style> body{ font-size: 10px; } .one{ font-size: 32px; } .two{ font-size: 2em; } .three{ font-size: 2rem; } .four{ width: 50%; height: 100px; background: red; } .five{ width: 50vw; /*vh(๋†’์ด), vw(๋„“์ด)*/ height: 100px; background: aqua; } .six{ width: 500px; } </style> </head> <body> <!-- font-size : 16px --> <div class="two"> <!-- font-size : 32px --> <div class="two"> <!-- font-size : 64px --> <div class="two"> <!-- font-size : 128px --> hello </div> </div> </div> <!-- font-size : 16px --> <div class="two"> <!-- font-size : 32px --> <div class="two"> <!-- font-size : 64px --> <div class="three"> <!-- font-size : 32px --> hello </div> </div> </div> <div class="six"> <div class="four">hello</div> </div> <div class="four"></div> <div class="five">hello</div> <div class="six"> <div class="five">hello</div> </div> <h2>๊ณ ์ • ํฌ๊ธฐ ๋‹จ์œ„</h2> <p>px</p> <h2>๊ฐ€๋ณ€ ํฌ๊ธฐ ๋‹จ์œ„</h2> <p>em, rem, %, vw, vh</p> </body> </html>

2. width, height

์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS

3. border, radius

์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
border๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ property๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
  • border-width - ์„ ์˜ ๋‘๊ป˜์™€ ๊ด€๋ จ๋œ ์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • border-style - ์„ ์˜ ๋ชจ์–‘๊ณผ ๊ด€๋ จ๋œ ์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • border-color - ์„ ์˜ ์ƒ‰๊น”๊ณผ ๊ด€๋ จ๋œ ์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • initial - ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • inherit - ๋ถ€๋ชจ ์š”์†Œ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์†๋ฐ›์Šต๋‹ˆ๋‹ค.
ย 
์œ„์™€ ๊ฐ™์€ ์†์„ฑ์€ ์•„๋ž˜ ์ฝ”๋“œ ์ˆœ์„œ๋กœ ์ž‘์„ฑํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.
border: border-width border-style border-color | initial | inherit
ย 
border-width๋ถ€ํ„ฐ ํ•˜๋‚˜์”ฉ ์ž์„ธํžˆ ์„ค๋ช…๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
ย 
๋จผ์ € border-width๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฐฉ๋ฒ•์œผ๋กœ ์„ค์ •์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • px - ์†์„ฑ ๊ฐ’์„ ์ง์ ‘ ํ”ฝ์…€ ๋‹จ์œ„๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  • medium - ์ค‘๊ฐ„ ๊ตต๊ธฐ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • thin - ์‹ค์„ ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • thick - ๊ตต์€ ์„ ์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
ย 
๋‹ค์Œ์œผ๋กœ border-style์„ ์„ค๋ช…๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค. ์„ ์˜ ํ˜•ํƒœ๋Š” ์‹ค์„ , ์ ์„ , ํŒŒ์„  ๋“ฑ ๋‹ค์–‘ํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์•„์˜ˆ ์—†์•จ ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
  • none - ์„ ์„ ์—†์•ฑ๋‹ˆ๋‹ค.
  • solid - ์‹ค์„ ์ž…๋‹ˆ๋‹ค.
  • dotted - ์ ์„ ์ž…๋‹ˆ๋‹ค.
  • dashed - ํŒŒ์„ ์œผ๋กœ ๋ฐ”๋Š์งˆ์„ ๊ณผ ๊ฐ™์€ ์„ ์ž…๋‹ˆ๋‹ค.
  • double - ์ด์ค‘์„ ์ž…๋‹ˆ๋‹ค.
  • groove - ์„ ์ด ์•ˆ์ชฝ์œผ๋กœ ํŒŒ์ธ ์„ ์ž…๋‹ˆ๋‹ค.
  • ridge - ๋ณผ๋กํ•˜๊ฒŒ ์ž…์ฒด๊ฐ์ด ์žˆ๋Š” ์„ ์ž…๋‹ˆ๋‹ค.
  • inset - ํ…Œ๋‘๋ฆฌ๊ฐ€ ์ „์ฒด์ ์œผ๋กœ ์•ˆ์œผ๋กœ ๋“ค์–ด๊ฐ€ ๋ณด์ด๋Š” ํ˜•ํƒœ์ž…๋‹ˆ๋‹ค.
  • outset - inset์˜ ๋ฐ˜๋Œ€์ž…๋‹ˆ๋‹ค.
ย 
๋งˆ์ง€๋ง‰์€ border-color์ž…๋‹ˆ๋‹ค. ์ƒ‰๊น”์˜ ์ข…๋ฅ˜์— ๋Œ€ํ•ด์„œ๋Š” ๋งŽ์ด ์•„์‹œ๊ธฐ๋•Œ๋ฌธ์— ํ…Œ๋‘๋ฆฌ top, bottom, left, right์— ์ƒ‰๊น”์„ ์ฃผ๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ ์•Œ๋ ค๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
[1] border-color: red; [2] border-color: red green; [3] border-color : red green blue; [4] border-color : red green blue yellow;
[1]๊ณผ ๊ฐ™์ด ํ•œ ๊ฐœ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด ๋„ค ๋ฉด์— ๋™์ผํ•œ ์ƒ‰์ƒ์ด ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
[2]์™€ ๊ฐ™์ด ๋‘ ๊ฐœ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด (top bottom), (left right)์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
[3]๊ณผ ๊ฐ™์ด ์„ธ ๊ฐœ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด (top), (left right), (bottom)์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
[4]์™€ ๊ฐ™์ด ๋„ค ๊ฐœ์˜ ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด top, right, bottom, left์— ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
ย 
์ง์ ‘ ํ…Œ๋‘๋ฆฌ์— ์„ค์ •์„ ๋„ฃ๋Š”์ฝ”๋“œ์˜ˆ์ œ์™€ ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ๋“œ๋ฆฌ๊ณ  ํ…Œ๋‘๋ฆฌ๋Š” ๋งˆ๋ฌด๋ฆฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
<!doctype html> <html> <head> <style type="text/css"> div { margin: 10px 0px; font-size: 13px; } .one { border: 4px ridge red; } .two { border: thick solid green; } .three { border: thin dotted blue; } .four { border: medium inset; border-color: yellow green } </style> </head> <body> <div class="one"> <p> border: 4px none red;</p> </div> <div class="two"> <p>border: thick solid green;</p> </div> <div class="three"> <p>border: thin dotted blue;</p> </div> <div class="four"> <p>border: medium inset; <br> border-color: yellow green</p> </div> </body> </html>
ย 
notion imagenotion image
ย 
์ด๋ฒˆ์—๋Š” radius๋ฅผ ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ณดํ†ต์€ radius: 50%๋กœ 4๊ตฐ๋ฐ ๋ชจ๋‘ radius๋ฅผ ์ฃผ๊ธฐ๋„ ํ•˜๋Š”๋ฐ, ์ดํ•ด๋ฅผ ๋•๊ธฐ ์œ„ํ•ด ์™ผ์ชฝ ์ƒ๋‹จ์—๋งŒ ๋ถ€์—ฌํ•ด๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
์•„๋ž˜๋ฅผ ๋ณด๋ฉด 50px์—์„œ ์„ ์ด ๊บพ์ด๋Š” ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์†์„ฑ์„ ์‚ฌ์šฉํ•ด ๋ชจ์„œ๋ฆฌ๋ฅผ ๊นŽ๊ฑฐ๋‚˜ ๋„ํ˜•์„ ๋งŒ๋“ค๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค.
<!DOCTYPE html> <html> <head> <style type="text/css"> div { width: 100px; height: 100px; background-color: darkgreen; } .one { border: 1px solid red; border-top-left-radius: 50px; } </style> </head> <body> <div class="one"></div> </body> </html>
notion imagenotion image

4. margin, padding

์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์œ„ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ ๋ฐ•์Šค๋ชจ๋ธ์„ ๊ตฌ์„ฑํ•˜๋Š” ์†์„ฑ๋“ค์„ ํ•ฉํ•ด BOX ์†์„ฑ ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด ์†์„ฑ๋“ค ์ค‘์—์„œ width์™€ height ์†์„ฑ์€ ๋‹จ์–ด ๊ทธ๋Œ€๋กœ ๊ฐ€๋กœ์™€ ์„ธ๋กœ์˜ ๊ธธ์ด๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. margin๊ณผ padding์€ ์—ฌ๋ฐฑ์˜ ํฌ๊ธฐ๋ฅผ ์˜๋ฏธํ•˜๊ณ , border๋Š” ํ…Œ๋‘๋ฆฌ๋ฅผ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ฐ ์†์„ฑ์€ ํฌ๊ธฐ(์‚ฌ์ด์ฆˆ)๋ฅผ ์ ์–ด์ฃผ๊ณ , ๋‹จ์œ„๋ฅผ ์ ์–ด์ฃผ๋ฉด ๋ฉ๋‹ˆ๋‹ค. ์ž์„ธํ•œ ์„ค๋ช…์€ ์•„๋ž˜ ์˜ˆ์ œ๋ฅผ ํ†ตํ•ด์„œ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> body { font-size: 30px; } p:nth-child(1) { font-size: 100%; } p:nth-child(2) { font-size: 0.5em; } p:nth-child(3) { font-size: 50%; } div:nth-child(4) { width: 50%; height: 100px; background-color: #FFD9EC; font-size: 50%; } div:nth-child(5) { width: 30%; height: 150px; background-color: #E3C4FF; font-size: 50%; } </style> </head> <body> <!-- ๊ฐ p๋ณ„ ์†์„ฑ์„ ์ง€์ •ํ•œ๋‹ค. --> <p>์ด ๋ฒˆ ์˜ˆ์ œ์—์„œ๋Š” width์™€ height์˜ ์†์„ฑ์— ๋Œ€ํ•ด์„œ ์•Œ์•„๋ณธ๋‹ค.</p> <!-- ์ฒซ๋ฒˆ์งธ p์˜ ์†์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค. --> <p>1. width๋Š” ๊ฐ€๋กœ์˜ ๊ธธ์ด๋‹ค.</p> <!-- ๋‘๋ฒˆ์งธ p์˜ ์†์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค. --> <p>2. height๋Š” ์„ธ๋กœ์˜ ๊ธธ์ด์ด๋‹ค.</p> <!-- ์„ธ๋ฒˆ์งธ p์˜ ์†์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค. --> <div> <!-- ์ฒซ๋ฒˆ์งธ div์˜ ์†์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค. --> <br/><br/> ๊ฐ€๋กœ width๋Š” 50%์ด๊ณ , ์„ธ๋กœ height๋Š” 100%์ด๋‹ค. </div> <div> <!-- ๋‘๋ฒˆ์งธ div์˜ ์†์„ฑ์„ ๋”ฐ๋ฅธ๋‹ค. --> <br/><br/> ๊ฐ€๋กœ width๋Š” 30%์ด๊ณ , ์„ธ๋กœ heigth๋Š” 150px์ด๋‹ค. </div> </body> </html>
[์‹คํ–‰ํ™”๋ฉด]
notion imagenotion image
์ฒซ๋ฒˆ์งธ div์˜ width์™€ height๋Š” ๊ฐ๊ฐ 50%์™€ 100px ์ž…๋‹ˆ๋‹ค. ๋‘๋ฒˆ์งธ div์˜ width์™€ height๋Š” ๊ฐ๊ฐ 30%์™€ 150px ์ž…๋‹ˆ๋‹ค. ์ฒซ๋ฒˆ์งธ div์˜ ๊ฐ€๋กœ๋ณด๋‹ค ๋‘๋ฒˆ์งธ div์˜ ๊ฐ€๋กœ๊ฐ€ ๋” ์ž‘์€ ๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ ์ฒซ๋ฒˆ์งธ div์˜ ์„ธ๋กœ๋ณด๋‹ค ๋‘๋ฒˆ์งธ div์˜ ์„ธ๋กœ๊ฐ€ ๋” ๊ธธ์–ด์ง„ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • margin ๊ณผ padding ์†์„ฑ
    • padding : ๋ณธ๋ฌธ ๋‚ด์šฉ๊ณผ border ์‚ฌ์ด์˜ ์—ฌ๋ฐฑ border : ์„  (์„ ์˜ ๊ตต๊ธฐ๋ฅผ ๋‹ค์–‘ํ•˜๊ฒŒ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ์„ ์„ ๊ทธ๋ฆฌ์ง€ ์•Š์„ ์ˆ˜๋„ ์žˆ์Œ) margin : border์™€ ๋ฐ”๊นฅ๊ณผ์˜ ์—ฌ๋ฐฑ
'P-B-M' ์˜ ์ˆœ์„œ๋กœ ๊ธฐ์–ตํ•˜๋ฉด ์ข‹์Šต๋‹ˆ๋‹ค. padding์€ ์š”์†Œ์˜ ํ…Œ๋‘๋ฆฌ ์•ˆ์ชฝ๊ณผ ์ฝ˜ํ…์ธ  ์‚ฌ์ด์˜ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•˜๋Š” ๋ฐ˜๋ฉด์—, margin์€ ์š”์†Œ์˜ ํ…Œ๋‘๋ฆฌ ์™ธ๋ถ€์— ํˆฌ๋ช…ํ•œ ๊ณต๊ฐ„์„ ํ™•๋ณดํ•ฉ๋‹ˆ๋‹ค.
์ด๋•Œ margin์˜์—ญ์€ padding์˜์—ญ๊ณผ๋Š” ๋‹ฌ๋ฆฌ background-color ์†์„ฑ์œผ๋กœ ์„ค์ •๋œ ๋ฐฐ๊ฒฝ์ƒ‰์˜ ์˜ํ–ฅ์„ ๋ฐ›์ง€ ์•Š๊ณ  ํ•ญ์ƒ ํˆฌ๋ช…ํ•œ ์ƒ‰์„ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ margin๊ณผ padding ๋ชจ๋‘ -top(์ƒ๋‹จ ์—ฌ๋ฐฑ), -right(์˜ค๋ฅธ์ชฝ ์—ฌ๋ฐฑ), -bottom(ํ•˜๋‹จ ์—ฌ๋ฐฑ), -left(์™ผ์ชฝ ์—ฌ๋ฐฑ)์˜ ๋ฐฉ์‹์œผ๋กœ ๊ฐ ์˜์—ญ์˜ ํฌ๊ธฐ๋ฅผ ๋ฐฉํ–ฅ๋ณ„๋กœ ๋”ฐ๋กœ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๐Ÿ’ก
์ž์œ ๋กญ๊ฒŒ ํฌ๊ธฐ๋ฅผ ์กฐ์ •ํ•˜๋ฉฐ ๋‹ค์–‘ํ•˜๊ฒŒ ์‹ค์Šตํ•ด๋ณด์„ธ์š”!
ย 
ย 
ย 

1. margin

margin์€ ์•„๋ž˜์™€ ๊ฐ™์€ property๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
  • margin
  • margin-top
  • margin-right
  • margin-bottom
  • margin-left
selector{ margin: 10px, 15px, 20px, 25px; }
์œ„์˜ ๊ฒฝ์šฐ 12์‹œ๋ถ€ํ„ฐ 3์‹œ, 6์‹œ, 9์‹œ ๋ฐฉํ–ฅ์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜๋งŒ ๋„ฃ์„ ๊ฒฝ์šฐ 4๋ฐฉํ–ฅ ๋ชจ๋‘ ์ ์šฉ๋˜๋ฉฐ 2๊ฐœ๋ฅผ ๋„ฃ์„ ๊ฒฝ์šฐ ์ƒํ•˜, ์ขŒ์šฐ๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
selector{ margin: 10px, 20px, 25px; }
์œ„์™€ ๊ฐ™์ด ์‚ฌ์šฉํ•˜์‹ค ๊ฒฝ์šฐ ์ง์ด ๋งž์ง€ ์•Š์•„์„œ ์ž‘๋™ํ•˜์ง€ ์•Š์œผ์‹ค ๊ฒƒ ๊ฐ™์ง€๋งŒ 10px์€ top์œผ๋กœ 20px์€ ์ขŒ์šฐ๋กœ, 25px์€ bottom์œผ๋กœ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.
๋งˆ์ง„์˜ value๋กœ ์ค„ ์ˆ˜ ์žˆ๋Š” ๊ฐ’์€ ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. w3school์—์„œ ์‹ค์Šต(https://www.w3schools.com/cssref/playit.asp?filename=playcss_margin&preval=auto)ํ•ด๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • length : px, cm ๋“ฑ ๊ณ ์ •๋œ ๊ธธ์ž…๋‹ˆ๋‹ค.
  • % : em, rem, % ๋“ฑ ๊ฐ€๋ณ€ ๊ธธ์ด์ž…๋‹ˆ๋‹ค.
  • initial : ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • inherit : ๋ถ€๋ชจ ์š”์†Œ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์†๋ฐ›์Šต๋‹ˆ๋‹ค.
  • auto : ๋ถ€๋ชจ ์š”์†Œ์˜ ์ˆ˜ํ‰ ๋ฐฉํ–ฅ์œผ๋กœ margin์„ ์ž๋™์œผ๋กœ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค.
์—ฌ๊ธฐ์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ฝ”๋”ฉํ•ด๋ณด์‹œ๋ฉด ์ขŒ์šฐ ๊ฐ’์ด ์ž๋™์œผ๋กœ ๊ณ„์‚ฐ๋˜์–ด ์ค‘์•™ ์ •๋ ฌ ๋จ์„ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
<html> <head> <style> div { border: 10px solid blue; width: 200px; margin: auto; } </style> </head> <body> <div>hello world</div> </body> </html>
ย 
** ๋งˆ์ง„ ๊ฒน์นจ ํ˜„์ƒ (margin collapsing) **
๋งˆ์ง„ ๊ฒน์นจ ํ˜„์ƒ์ด๋ž€?
  1. ์š”์†Œ์™€ ์š”์†Œ์˜ ์‚ฌ์ด์— ๋งˆ์ง„ ํƒ‘(margin-top) ํ˜น์€ ๋งˆ์ง„ ๋ฐ”ํ…€(margin-bottom)์˜ ๊ณต๊ฐ„์ด ์žˆ์„ ๊ฒฝ์šฐ ๋” ๋†’์€ ๊ฐ’์˜ ๋งˆ์ง„ ๊ฐ’์ด ์ ์šฉ๋˜๋Š” ํ˜„์ƒ
<div class="first"></div> <div class="second"></div>
div{ width:100px; height:100px; border:1px solid black; } .first{ margin-bottom:30px; } .second{ margin-top:60px; } /* ๋งˆ์ง„ ๊ฐ’์ด ๋†’์€ ์ชฝ์˜ ๋งˆ์ง„๋งŒ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค. */
ย 
  1. ๋ถ€๋ชจ ์š”์†Œ์™€ ์ž์‹ ์š”์†Œ๊ฐ€ ์กด์žฌํ•  ๋•Œ, ์ž์‹ ์š”์†Œ์˜ ๋งˆ์ง„ ํƒ‘ ํ˜น์€ ๋งˆ์ง„ ๋ฐ”ํ…€ ๊ฐ’์ด ๋ถ€๋ชจ์˜ ๋†’์ด์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๋Š” ํ˜„์ƒ
<div class="parent"> <div class="child"></div> </div>
.parent{ background-color:yellow; } .child{ width:100px; height:100px; margin-top:50px; background-color:red; } /* ๋ถ€๋ชจ์˜ ๋†’์ด๋ฅผ ๋”ฐ๋กœ ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด ์ž์‹์˜ ๋†’์ด๋งŒํผ ๋ถ€๋ชจ์˜ ๋†’์ด๊ฐ€ ์ง€์ •๋ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์œ„์™€ ๊ฐ™์€ ๊ฒฝ์šฐ ์ž์‹์˜ ๋งˆ์ง„ ํƒ‘, ๋ฐ”ํ…€ ๊ฐ’์ด ๋ถ€๋ชจ์˜ ๋†’์ด์— ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. */
์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ .child ์š”์†Œ์˜ ๋งˆ์ง„ ๊ฐ’์ด ๋ถ€๋ชจ ์˜์—ญ์„ ๋„˜์–ด์„œ๊ณ  ์žˆ๋Š” ๋ชจ์Šต์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฐ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜์ง€ ์•Š๋Š”๋‹ค๋ฉด ์—ฌ๋Ÿฌ๋ถ„์˜ ์ƒ๊ฐ๊ณผ ๋‹ค๋ฅธ UI๊ฐ€ ๊ตฌ์„ฑ๋  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋ถ€๋ชจ์™€ ์ž์‹์š”์†Œ ๋ชจ๋‘์—๊ฒŒ ๋งˆ์ง„ํƒ‘์„ ์ฃผ๊ณ  ์‹ถ์€ ๊ฒฝ์šฐ ๋‚ฎ์€ ๊ฐ’์˜ ๋งˆ์ง„ ํƒ‘ ๊ฐ’์ด ์ƒ์‡„๋˜์–ด ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.
notion imagenotion image
์ด์™€ ๊ฐ™์€ ํ˜„์ƒ์„ ํ•ด๊ฒฐํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๋ช‡๊ฐ€์ง€ ์†Œ๊ฐœํ•ด ๋“œ๋ฆฌ๊ฒ ์Šต๋‹ˆ๋‹ค.
  1. ๋ถ€๋ชจ ์š”์†Œ์— overflow ์†์„ฑ ๊ฐ’์„ ์ ์šฉํ•ด์ค๋‹ˆ๋‹ค.
  1. ๋ถ€๋ชจ ์š”์†Œ์— display: inline-block ๊ฐ’์„ ์ ์šฉํ•ด์ค๋‹ˆ๋‹ค.
  1. ๋ถ€๋ชจ ์š”์†Œ์— border ๊ฐ’์„ ์ ์šฉํ•ด์ค๋‹ˆ๋‹ค.
์ด ์„ธ ๊ฐ€์ง€ ๋ฐฉ๋ฒ• ์ค‘์— ์ƒํ™ฉ์— ๊ฐ€์žฅ ์•Œ๋งž๋Š” ๋ฐฉ๋ฒ•์„ ์ด์šฉํ•˜์‹œ๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.
ย 

2. padding

padding์€ margin๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์•„๋ž˜์™€ ๊ฐ™์€ property๋ฅผ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
  • padding
  • padding-top
  • padding-right
  • padding-bottom
  • padding-left
๋ถ€์—ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ margin๊ณผ ๊ฐ™์œผ๋ฏ€๋กœ ์ƒ๋žตํ•˜๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋‹ค๋งŒ value๋กœ ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ฐ’ ์ค‘ auto๋Š” ์—†์Šต๋‹ˆ๋‹ค.
margin์€ ํ…Œ๋‘๋ฆฌ ๋ฐ–์— ์œ„์น˜ํ•˜๋ฉฐ, ๋ฐ–์— ์—ฌ๋ฐฑ์„ ๋งŒ๋“ค์–ด์ค๋‹ˆ๋‹ค. ๊ฐ ๋ฉด์— ๋Œ€ํ•œ ๊ฐ’์„ ์ง€์ •ํ•  ๋•Œ๋Š” margin-๋ฐฉํ–ฅ(top, right, bottom, left)์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๋ชจ๋“  ๋ฐฉํ–ฅ์„ ํ•œ๋ฒˆ์— ๋ฐ”๊พธ๊ณ  ์‹ถ๋‹ค๋ฉด margin: 1px, 2px, 3px, 4px; ๋กœ ๋‚˜ํƒ€๋‚ด๋ฉด top, right, bottom, left ๋ฐฉํ–ฅ ์ˆœ์œผ๋กœ ๊ฐ ๋ฉด์— ๋Œ€ํ•œ ๊ฐ’์ด ๋ฐ”๋€๋‹ˆ๋‹ค.
hello world๊ฐ€ ๋“ค์–ด์žˆ๋Š” ์‚ฌ๊ฐํ˜• ๋ฐ•์Šค๋ฅผ ๊ทธ๋ ค๋ณด๋ฉด์„œ margin๊ณผ padding์— ๋Œ€ํ•ด ์„ค๋ช…๋“œ๋ฆฌ๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

5.overflow

overflowย ์†์„ฑ์€ ์š”์†Œ์˜ ์ฝ˜ํ…์ธ ๊ฐ€ ๋„ˆ๋ฌด ์ปค๋‹ค๋ž„ ๊ฒฝ์šฐ ์š”์†Œ๋ฅผ ์–ด๋–ป๊ฒŒ ์ฒ˜๋ฆฌํ• ์ง€ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.ย overflow-x,ย overflow-y์˜ ์ถ• ๋ณ„๋กœ ๊ฐ’์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
์•„๋ž˜ ์ฝ”๋“œ์—์„œ๋Š” ๋ฒ„ํŠผ์•ˆ์˜ ์ด๋ฏธ์ง€๊ฐ€ ๋ฒ„ํŠผ์˜ ํฌ๊ธฐ๋ณด๋‹ค ๋” ํฝ๋‹ˆ๋‹ค.
notion imagenotion image
notion imagenotion image
ย 
<button> ์Šคํƒ€์ผ์— overflow:hidden ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฒ„ํŠผ์˜ ํฌ๊ธฐ๋งŒํผ ์ด๋ฏธ์ง€๋ฅผ ์ž˜๋ผ๋ฒ„๋ฆฝ๋‹ˆ๋‹ค.
notion imagenotion image
notion imagenotion image
overflowย ์†์„ฑ์€ ์ฒซ ๋ฒˆ์งธย overflow-x, ๋‘ ๋ฒˆ์งธ ๊ฐ’์€ย overflow-y๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ํ•˜๋‚˜๋งŒ ์‚ฌ์šฉํ•˜๋ฉด ์ง€์ •ํ•œ ๊ฐ’์„ ์–‘ ์ถ• ๋ชจ๋‘์— ์ ์šฉํ•˜๋Š” ์ถ•์•ฝํ˜•์ด ๋ฉ๋‹ˆ๋‹ค.
button{ /* x์ถ•์€ ์ˆจ๊ธฐ๊ณ , y์ถ•์€ ์ˆจ๊ธฐ์ง€๋งŒ ์Šคํฌ๋กค์„ ์ œ๊ณตํ•˜์—ฌ ์ž˜๋ฆฐ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๊ฒŒํ•ฉ๋‹ˆ๋‹ค. */ overflow:hidden visible; width:100px; height:30px; }
ย 

5.1 overflow ์ค‘์š” ์†์„ฑ

visible
overflow ์†์„ฑ์˜ ๊ธฐ๋ณธ ๊ฐ’์ž…๋‹ˆ๋‹ค. ์ฝ˜ํ…์ธ ๋ฅผ ์ž๋ฅด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
ย 
hidden
์ฝ˜ํ…์ธ ๋ฅผ ์š”์†Œ์˜ ํฌ๊ธฐ๋งŒํผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค. ์Šคํฌ๋กค ๋ฐ”๋ฅผ ์ œ๊ณตํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
ย 
scroll
์ฝ˜ํ…์ธ ๋ฅผ ์š”์†Œ์˜ ํฌ๊ธฐ๋งŒํผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ์ž˜๋ผ๋ƒ…๋‹ˆ๋‹ค. ์ž˜๋ ค์ง„ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์Šคํฌ๋กค ๋ฐ”๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
ย 

6. background

์›นํŽ˜์ด์ง€์— ์ด๋ฏธ์ง€๋ฅผ ๋„ฃ์„ ๋•Œ img ํƒœ๊ทธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ CSS์˜ background ์†์„ฑ์„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• ๋‘ ๊ฐ€์ง€๋ฅผ ์ฃผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
ํƒœ๊ทธ๋Š” ์›นํŽ˜์ด์ง€์˜ ์ปจํ…์ธ ์ด๋ฉฐ background ์†์„ฑ์€ ์ปจํ…์ธ ๋ฅผ ๊พธ๋ฏธ๊ธฐ ์œ„ํ•œ ์šฉ๋„๋กœ ๋งŽ์ด ์“ฐ์ž…๋‹ˆ๋‹ค. background์˜ ์„ธ๋ถ€์†์„ฑ์—๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๊ฒƒ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๊ทธ๋ƒฅ background๋ฅผ ์‚ฌ์šฉํ–ˆ์„ ๋•Œ์™€ ์ผ์ผ์ด ์ง€์ •ํ•ด์ฃผ์—ˆ์„ ๋•Œ์˜ ์ฐจ์ด๋ฅผ ๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.
ย 
1) background-image : url("์ด๋ฏธ์ง€ํŒŒ์ผ")
2) background-repeat
  • repeat
  • no-repeat
  • repeat-x
  • repeat-y
  • round
  • space
4) background-position
ย 
ย 
.home-header { background-image: url("apple.jpg"); background-size: cover; background-position: 50% 50%; background-repeat: no-repeat; }
ย 
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>๋ณด๊ฐ•์„ค๋ช…</title> <style> div { width: 425px; height: 200px; margin: 20px; background-image: url("https://www.tvn-2.com/nacionales/Imagen-ilustrativa-gato-medio-bosque_18585331.jpg"); background-size: 100px auto; border: 4px solid black; } .repeat { /* ๋ฐ˜๋ณต */ background-repeat: repeat; } .repeat-x { /* x์ถ•๋งŒ ๋ฐ˜๋ณต */ background-repeat: repeat-x; } .repeat-y { /* y์ถ•๋งŒ ๋ฐ˜๋ณต */ background-repeat: repeat-y; } .no-repeat { /* ๋ฐ˜๋ณต ์—†์Œ*/ background-repeat: no-repeat; } .round { /* ์ด๋ฏธ์ง€ ์งค๋ฆฌ์ง€ ์•Š๊ฒŒ, ์ด๋ฏธ์ง€ ํฌ๊ธฐ ๋ณ€ํ™”๋ฅผ ์ค˜์„œ ๊ฐ„๊ฒฉ ์—†์ด ๋ฐ˜๋ณต*/ background-repeat: round; } .space { /* ์ด๋ฏธ์ง€ ์งค๋ฆฌ์ง€ ์•Š๊ฒŒ ๋ฐ˜๋ณต, ์ด๋ฏธ์ง€ ํฌ๊ธฐ๋Š” ์œ ์ง€ํ•œ์ฑ„๋กœ ๊ฐ„๊ฒฉ ์—†์ด ๋ฐ˜๋ณต*/ background-repeat: space; } </style> </head> <body> <div class="repeat"></div> <div class="repeat-x"></div> <div class="repeat-y"></div> <div class="no-repeat"></div> <div class="round"></div> <div class="space"></div> </body> </html>

7. font

font-family๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด CSS๋ฅผ ์ ์šฉํ•˜์—ฌ ๊ธ€๊ผด์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ ๊ธ€๊ผด์€ ์—ฌ๋Ÿฌ ๊ฐœ๊ฐ€ ์ง€์ •๊ฐ€๋Šฅ ํ•œ๋ฐ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ์ง€์ •ํ•˜๋Š” ์ด์œ ๋Š” ํ•ด๋‹น ์„œ์ฒด๊ฐ€ ์—†์„ ๊ฒฝ์šฐ ๊ทธ ๋‹ค์Œ ๊ธ€๊ผด์ด ์ฐจ์„ ์ฑ…์œผ๋กœ ์‚ฌ์šฉ๋˜๋„๋ก ํ•ด์ค๋‹ˆ๋‹ค.
font-size๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด CSS๋ฅผ ์ ์šฉํ•˜์—ฌ ๊ธ€๊ผด์˜ ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธ€๊ผด์„ ์ง€์ •ํ•˜๋Š”๋ฐ ์ผ๋ฐ˜์ ์ธ ๋ฐฉ๋ฒ• 3๊ฐ€์ง€๋Š” px, %, em ๋‹จ์œ„๋“ค์ด ์žˆ์Šต๋‹ˆ๋‹ค. px ๋‹จ์œ„๋Š” ๊ฐ€์žฅ ๋งŽ์ด ํ‘œํ˜„๋˜๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ์ง€์ •๋œ ์ˆซ์ž๋Š” ํฐํŠธ์˜ ๋†’์ด๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. % ๋‹จ์œ„๋Š” ๋ถ€๋ชจ ์š”์†Œ์˜ ํฐํŠธ ํฌ๊ธฐ๊ฐ€ ๊ธฐ์ค€์ด ๋˜์–ด %๋กœ ํฌ๊ธฐ๋ฅผ ์ง€์ •ํ•ด ์ค๋‹ˆ๋‹ค. em ๋‹จ์œ„๋Š” ๋ถ€๋ชจ ์š”์†Œ์— ์žˆ๋Š” ํ…์ŠคํŠธ ํฌ๊ธฐ๋ฅผ ๊ธฐ์ค€์œผ๋กœ ํ…์ŠคํŠธ ํฌ๊ธฐ๋ฅผ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. W3C์—์„œ ๊ถŒ์žฅํ•˜๋Š” ๋‹จ์œ„๋กœ ๋ฐฐ์ˆ˜(2๋ฐฐ, 3๋ฐฐ, - n๋ฐฐ)๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.
  1. font-weight์€ ํ…์ŠคํŠธ๋ฅผ ๊ตต์€ ๊ธ€๊ผด๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. normal์€ ์ผ๋ฐ˜ ์Šคํƒ€์ผ, bold๋Š” ํ…์ŠคํŠธ๋ฅผ ๊ตต๊ฒŒ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  1. text-transform์€ ํ…์ŠคํŠธ๋ฅผ ๋Œ€๋ฌธ์ž๋‚˜ ์†Œ๋ฌธ์ž๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. uppercase๋Š” ๋Œ€๋ฌธ์ž, lowercase๋Š” ์†Œ๋ฌธ์ž, capitalize๋Š” ๊ฐ ๋‹จ์–ด์˜ ์ฒซ ๊ธ€์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ์ง€์ • ํ•ฉ๋‹ˆ๋‹ค.
  1. font-style์€ ํ…์ŠคํŠธ๋ฅผ ๊ธฐ์šธ๊ธฐ ๊ธ€๊ผด๋กœ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. normal์€ ์ผ๋ฐ˜ ์Šคํƒ€์ผ, italic์€ ์ดํƒˆ๋ฆญ์ฒด, oblique๋Š” ์˜ค๋ธ”๋ฆญ์ฒด๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
  1. text-align์€ ํ…์ŠคํŠธ์˜ ์ •๋ ฌ์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. left๋Š” ์™ผ์ชฝ, right๋Š” ์˜ค๋ฅธ์ชฝ, center๋Š” ๊ฐ€์šด๋ฐ, justify๋Š” ๋งˆ์ง€๋ง‰ ์ค„์„ ์ œ์™ธํ•˜๊ณ  ์–‘์ชฝ์œผ๋กœ ์ •๋ ฌ ํ•ฉ๋‹ˆ๋‹ค.
  1. text-decoration์€ ๋ฐ‘์ค„ ์„ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. none์€ ํšจ๊ณผ์ œ๊ฑฐ, underline์€ ๋ฐ‘์ค„์ถ”๊ฐ€, overli

1. Font-size

notion imagenotion image
font๊ฐ€ ๋ถ™์€ property๋Š” ์–ผ๋งˆ๋‚˜ ์žˆ์„๊นŒ์š”? ์šฐ์„  p ํƒœ๊ทธ๋กœ ๊ฐ„๋‹จํ•˜๊ฒŒ ๋ฌธ์„œ๋ฅผ ๋งŒ๋“ค์–ด ํฌ๋กฌ ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋กœ ์—ด์–ด๋ณด์•˜์Šต๋‹ˆ๋‹ค.
์š”์†Œ ์„ ํƒ ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด์‹  ๋‹ค์Œ hello world๋ฅผ ํด๋ฆญํ•˜์‹œ๊ณ  ๊ฐœ๋ฐœ์ž ๋„๊ตฌ์—์„œ Computed๋ฅผ ํด๋ฆญํ•ด์ฃผ์„ธ์š”. ๊ทธ ๋‹ค์Œ Show all์„ ๋ˆ„๋ฅด๋ฉด ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” property๊ฐ€ ๋ชจ๋‘ ๋‚˜์˜ต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ font๊ฐ€ ๋ถ™์€ property๋ฅผ ์ฐพ์•„๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
notion imagenotion image
์—ฌ๊ธฐ์„œ ๋ณด๋‹ค ๋งŽ์€ ์ •๋ณด๋ฅผ ์Šต๋“ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 1.3.2๋ถ€ํ„ฐ๋Š” ํ•ด๋‹น ์ฐฝ์„ ์—ด์ง€ ์•Š์„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋ฐ”๋กœ ์•Œ์•„๋ณผ ์ˆ˜ ์žˆ๋Š” property์™€ value๋กœ๋Š” ๋ง‘์€ ๊ณ ๋”• ํฐํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๊ณ  size๋Š” 16px, font-weight์€ 400์ด๊ตฐ์š”.
์—ฌ๊ธฐ์„œ font-size๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” value๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ๊ฐ์˜ Test๋Š” w3schools์—์„œ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.(https://www.w3schools.com/cssref/playit.asp?filename=playcss_font-size&preval=medium)
  • medium : ์›น๋ธŒ๋ผ์šฐ์ €์—์„œ ์ •ํ•œ ๊ธฐ๋ณธ ๊ธ€์žํฌ๊ธฐ์ž…๋‹ˆ๋‹ค.
  • xx-small, x-small, small, large, x-large, xx-large : ์ด๋ฆ„์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ๊ธฐ๋ณธ ๊ธ€์ž ํฌ๊ธฐ์—์„œ ์ž‘์€ ๊ฐ’๋ถ€ํ„ฐ ํฐ ๊ฐ’์˜ ์ˆœ์ž…๋‹ˆ๋‹ค.
  • smaller, larger : ๋ถ€๋ชจ ์š”์†Œ์˜ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ์ƒ๋Œ€์  ๊ธ€์ž ํฌ๊ธฐ์ž…๋‹ˆ๋‹ค.
  • length : px, cm ๋“ฑ ๊ณ ์ •๋œ ๊ธธ์ž…๋‹ˆ๋‹ค.
  • % : em, rem, % ๋“ฑ ๊ฐ€๋ณ€ ๊ธธ์ด์ž…๋‹ˆ๋‹ค.
  • initial : ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • inherit : ๋ถ€๋ชจ ์š”์†Œ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์†๋ฐ›์Šต๋‹ˆ๋‹ค.
ย 

2. font-family

  • family-name : ๊ถ์„œ, ๊ตด๋ฆผ, arial๊ฐ™์€ ๊ธ€๊ผด ์ด๋ฆ„์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ง€์ •ํ•œ ๊ธ€๊ผด์ด ์‚ฌ์šฉ์ž์˜ ์ปดํ“จํ„ฐ์— ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š์„ ๊ฒฝ์šฐ, ๊ธ€๊ผด์€ ๋ธŒ๋ผ์šฐ์ € ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • initial : ๋ถ€๋ชจ์˜ ์†์„ฑ์„ ์ƒ์†๋ฐ›์ง€ ์•Š๊ณ , ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ดˆ๊ธฐํ™”ํ•ฉ๋‹ˆ๋‹ค.
  • inherit : ๋ถ€๋ชจ์˜ ์†์„ฑ์„ ์ƒ์† ๋ฐ›์Šต๋‹ˆ๋‹ค.
๐Ÿ’ก
Web font (https://fonts.google.com/) font-family์—์„œ ๋ง์”€๋“œ๋ ธ๋“ฏ์ด ์ง€์ • ๊ธ€๊ผด์ด ์„ค์น˜๋˜์ง€ ์•Š์„ ์‹œ ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ํ‘œ๊ธฐ๋ฉ๋‹ˆ๋‹ค. ์ด ๋•Œ web fonts๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์‚ฌ์šฉ์ž์˜ ์ปดํ“จํ„ฐ์— ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š์€ ๊ธ€๊ผด์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. web fonts๋Š” ์›ํ•˜๋Š” font๊ฐ€ ์žˆ๋Š” ๊ณณ์œผ๋กœ ์—ฐ๊ฒฐํ•˜์—ฌ, ์™ธ๋ถ€ ์Šคํƒ€์ผ์„ ๋ถˆ๋Ÿฌ์™€์„œ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์„ ์ฑ„ํƒํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์œ ๋ช…ํ•œ web fonts๋กœ๋Š” google font๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ๋ฐฉ๋ฒ•์€ ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ฐธ๊ณ ํ•˜์‹œ๊ธธ ๋ฐ”๋ž๋‹ˆ๋‹ค.
// ์‚ฌ์šฉ์˜ˆ์‹œ1 : href ์ฐธ๊ณ  <head> <link href = 'http://fonts.googleapis.com/css?family=Open+Sans:400.300' rel='stylesheet' type='text/css'> <style type = "text/css"> h1 {font-family: 'Open Sans', sans-serif;}</style> </head>
// ์‚ฌ์šฉ์˜ˆ์‹œ2 : url ์ฐธ๊ณ  <style type = "text/css"> @import url(http://fonts.googleapis.com/css?family=Open+Sans:400.300); h1 {font-family: 'Open Sans', sans-serif;} </style>
ย 

์ถ”์ฒœ ์›น ํฐํŠธ ์‚ฌ์ดํŠธ

Google fonts
๊ตฌ๊ธ€ ํฐํŠธ๋Š” ๊ฐ€์žฅ ๋Œ€ํ‘œ์ ์ธ ์›น ํฐํŠธ ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ์ด๊ณณ์—์„œ๋Š” ๋ผ์ด์„ ์Šค์— ๋Œ€ํ•œ ์„ค๋ช…์„ ์ œ๊ณตํ•˜๋ฉฐ, ์›ํ•˜๋Š” ํฐํŠธ ๊ตต๊ธฐ ์Šคํƒ€์ผ์„ ์„ ํƒํ•˜์—ฌ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋ˆˆ๋ˆ„
๋ˆˆ๋ˆ„๋Š” ์ƒ์—…์šฉ ๋ฌด๋ฃŒ ํ•œ๊ธ€ ํฐํŠธ ์‚ฌ์ดํŠธ๋กœ, ์ƒ์—…์ ์œผ๋กœ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌด๋ฃŒ ํ•œ๊ธ€ ํฐํŠธ๋ฅผ ๋ชจ์•„ ๋†“์€ ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ๋งŽ์€ ๋ถ„๋“ค์ด ์ฆ๊ฒจ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฐ๋‹ฌ์˜ ๋ฏผ์กฑ ํฐํŠธ ๋“ฑ ๋‹ค์–‘ํ•œ ํ•œ๊ธ€ ํฐํŠธ๋ฅผ ์ œ๊ณตํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋ผ์ด์„ ์Šค์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์„ค๋ช…๋„ ๊ธฐ์žฌ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
Adobe Fonts
์–ด๋„๋น„ ํฐํŠธ์—์„œ๋„ ๋‹ค์–‘ํ•œ ์›น ํฐํŠธ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. Adobe Creative Cloud ์œ ๋ฃŒ ๊ตฌ๋…์ž๋ผ๋ฉด ๋ฌด์ œํ•œ์œผ๋กœ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
๋„ค์ด๋ฒ„ ํ•œ๊ธ€ํ•œ๊ธ€ ์•„๋ฆ„๋‹ต๊ฒŒ ๊ธ€๊ผด ๋ชจ์Œ
๋„ค์ด๋ฒ„๊ฐ€ ๊ฐœ๋ฐœํ•œ ๊ธ€๊ผด์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ฑฐ๋‚˜ ์›น ํฐํŠธ URL์„ ํ†ตํ•ด ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ๋Œ€ํ‘œ์ ์ธ ๊ธ€๊ผด์—๋Š” ๋‚˜๋ˆ”๊ธ€๊ผด์ด ์žˆ์Šต๋‹ˆ๋‹ค.
๋„ค์ด๋ฒ„ ๊ธ€๊ผด ๋ชจ์Œ
ํ•œ๊ธ€์˜ ์•„๋ฆ„๋‹ค์›€, ๋„ค์ด๋ฒ„๊ฐ€ ๋งŒ๋“  ๊ธ€๊ผด๋กœ ๋งŒ๋‚ฉ๋‹ˆ๋‹ค. ๋„ค์ด๋ฒ„ ํ•œ๊ธ€ํ•œ๊ธ€ ์•„๋ฆ„๋‹ต๊ฒŒ ๊ธ€๊ผด ๋ชจ์Œ์—๋Š” ๋„ค์ด๋ฒ„๊ฐ€ 2008๋…„๋ถ€ํ„ฐ ๊ฐœ๋ฐœํ•˜๊ณ  ๋ฐฐํฌํ•œ 150์—ฌ ์ข…์˜ ๋ชจ๋“  ํฐํŠธ๊ฐ€ ๋‹ด๊ฒจ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ๊ธ€๊ผด์€ ๋‹ค์šด๋กœ๋“œ ํ˜น์€ ์›นํฐํŠธ URL ์„ ํ†ตํ•ด ์ž์œ ๋กญ๊ฒŒ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋„ค์ด๋ฒ„๊ฐ€ ๊ฐœ๋ฐœํ•œ ๊ธ€๊ผด ๋ชจ์Œ ๋ณด๊ธฐ ๋„ค์ด๋ฒ„ ๊ธ€๊ผด ์ €์ž‘๊ถŒ ์•ˆ๋‚ด ๋„ค์ด๋ฒ„์—์„œ ์ œ์ž‘ํ•œ ๋‚˜๋ˆ” ๊ธ€๊ผด๊ณผ ๋งˆ๋ฃจ ๋ถ€๋ฆฌ ๊ธ€๊ผด, ํด๋กœ๋ฐ” ๋‚˜๋ˆ”์†๊ธ€์”จ(์ดํ•˜ ๋„ค์ด๋ฒ„ ๊ธ€๊ผด)์˜ ์ง€์  ์žฌ์‚ฐ๊ถŒ์€ ๋„ค์ด๋ฒ„์™€ ๋„ค์ด๋ฒ„ ๋ฌธํ™”์žฌ๋‹จ์— ์žˆ์Šต๋‹ˆ๋‹ค.
๋„ค์ด๋ฒ„ ๊ธ€๊ผด ๋ชจ์Œ๋„ค์ด๋ฒ„ ๊ธ€๊ผด ๋ชจ์Œ
ย 

์ถ”์ฒœ ์›น ํฐํŠธ

Noto Sans Korean
ย 
Gmarket Sans
ย 
Spoqa Hans Sans Neo(์Šคํฌ์ปค ํ•œ ์‚ฐ์Šค ๋„ค์˜ค)
ย 
๋„ฅ์Šจ Lv.1 ๊ณ ๋”•
ย 
๋‚˜๋ˆ”์Šคํ€˜์–ด
ย 
์ฟ ํ‚ค๋Ÿฐ
ย 
Rix์—ด์ •๋„์ฒด
ย 

font format

font format ์ด๋ž€ ํฐํŠธ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋ฉฐ, ๋ธŒ๋ผ์šฐ์ € ๋ณ„๋กœ ์„œ๋กœ ๋‹ค๋ฅธ ํฌ๋งท์„ ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ธŒ๋ผ์šฐ์ €๋ณ„ ์ง€์› ์ •๋ณด๋ฅผ ์•Œ์•„ ๋‘˜ ํ•„์š”๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 
  • eot : ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๊ฐ€ ์›น์—์„œ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ์ œ์•ˆํ•œ ๊ธ€๊ผด ํฌ๋งท์ž…๋‹ˆ๋‹ค. IE ์—์„œ๋งŒ ์ง€์› ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
  • woff : ์—ฌ๋Ÿฌ ํšŒ์‚ฌ๋“ค์˜ ํ˜‘์—…์œผ๋กœ ์ œ์•ˆ๋œ ํฌ๋งท์ด๋ฉฐ ๊ฐ€์žฅ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋Š” ์›น ๊ธ€๊ผด ํฌ๋งท์ž…๋‹ˆ๋‹ค.
  • otf : ์–ด๋„๋น„์™€ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๊ฐ€ ํ˜‘๋ ฅํ•ด์„œ ๋งŒ๋“  TTF์˜ ๊ฐœ์„ ํŒ์ž…๋‹ˆ๋‹ค.
  • ttf : ์• ํ”Œ๊ณผ ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ๊ฐ€ ๊ณ ์•ˆํ•œ ๋ฒกํ„ฐ ๊ธ€๊ผด ํฌ๋งท์ž…๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ์›น ๋ธŒ๋ผ์šฐ์ €์—์„œ ์›น ๊ธ€๊ผด๋กœ TTF๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.
  • svg : ๋ฒกํ„ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” SVG๋ฅผ ํ™œ์šฉํ•œ ๊ธ€๊ผด ํ‘œํ˜„์ž…๋‹ˆ๋‹ค.
  • woff2 : WOFF ํฌ๋งท์„ ๊ฐœ์„ ํ•ด 30% ์ •๋„ ๋” ์ž‘์€ ๊ธ€๊ผด ํŒŒ์ผ๋กœ ์••์ถ•ํ•  ์ˆ˜ ์žˆ๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค. ํฐํŠธ์˜ ์šฉ๋Ÿ‰์„ ์ค„์ด๋Š”๋ฐ ํšจ๊ณผ์ ์ž…๋‹ˆ๋‹ค.
ย 
๋ธŒ๋ผ์šฐ์ €๋ณ„ ํฌ๋งท ์ง€์› ์ •๋ณด
Name
eot
woff
ttf/otf
svg
woff2
X
์ง€์›
์ง€์›
X
์ง€์›
X
์ง€์›
์ง€์›
X
์ง€์›
์ง€์›
์ง€์›
์ง€์›
X
X
X
์ง€์›
์ง€์›
์ง€์›
์ง€์›
X
์ง€์›
์ง€์›
์ง€์›
์ง€์›
ย 

3. font-weight

font-weight๋Š” ๊ธ€์ž ๊ตต๊ธฐ๋ฅผ ์„ค์ •ํ•˜๋Š” ์†์„ฑ์ž…๋‹ˆ๋‹ค.
  • normal - ๊ธฐ๋ณธ๊ฐ’์ด๋ฉฐ ๋ณดํ†ต ๊ตต๊ธฐ์ž…๋‹ˆ๋‹ค.
  • bold - ๊ตต์€ ๊ตต๊ธฐ์ž…๋‹ˆ๋‹ค.
  • bolder - ์ƒ์†๋œ ๊ฐ’๋ณด๋‹ค ๊ตต์€ ๊ตต๊ธฐ์ž…๋‹ˆ๋‹ค.
  • lighter - ์ƒ์†๋œ ๊ฐ’๋ณด๋‹ค ์–‡์€ ๊ตต๊ธฐ์ž…๋‹ˆ๋‹ค.
  • number- ์ˆซ์ž๋กœ ๊ตต๊ธฐ๋ฅผ ์ง€์ •ํ•˜๋ฉฐ 100,200,300,400๊ณผ ๊ฐ™์€ ์ˆซ์ž๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.
  • initial- ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
  • inherit- ๋ถ€๋ชจ ์š”์†Œ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์†๋ฐ›์Šต๋‹ˆ๋‹ค.
ย 
๊ตต๊ธฐ๊ฐ€ ๋™์ผํ•˜๋”๋ผ๋„ ๊ธ€์ž์ฒด์— ๋”ฐ๋ผ์„œ ์ฐจ์ด๊ฐ€ ๋‚  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์  ์œ ์˜ํ•˜๋ฉฐ ์˜ˆ์‹œ๋ฅผ ๋ณด์—ฌ๋“œ๋ฆฌ๊ณ  ๋งˆ๋ฌด๋ฆฌํ•˜๋„๋กํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!
<!doctype html> <html> <head> <meta charset="utf-8"> <style> div { } .weight-normal { font-weight: normal; } .weight-bold { font-weight: bold; } .weight-100 { font-weight: 100; } .weight-900 { font-weight: 900; } </style> </head> <body> <div> <p class="weight-normal">font-weight normal</p> <p class="weight-bold">font-weight bold</p> <p class="weight-100">font-weight 100</p> <p class="weight-900">font-weight 900</p> </div> </body> </html>
notion imagenotion image
ย 

google font

  • ์ฒซ๋ฒˆ์งธ ๋ฐฉ๋ฒ•
<--link--> <link href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap" rel="stylesheet">
body { font-family : 'Poppins', sans-serif; }
  • ๋‘๋ฒˆ์งธ ๋ฐฉ๋ฒ•
<style> @import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600&display=swap'); body { font-family : 'Poppins', sans-serif; } </style>
ย 

google icon font

<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.14.0/css/all.css" integrity="sha384-HzLeBuhoNPvSl5KYnjx0BT+WB0QEEqLprO+NBkkk5gbc67FTaL7XIGa2w1L0Xbgc" crossorigin="anonymous">
<i class="far fa-file-"></i>
ย 

fontasome

// example <i class="fas fa-bug"></i>
ย 

bootstrap font

bootstrap font๋Š” ์˜์ƒ ๋งจ ๋งˆ์ง€๋ง‰ ๋ถ€๋ถ„์— ๋„ฃ์–ด๋‘์—ˆ์Šต๋‹ˆ๋‹ค.
... ์ค‘๋žต ... <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.6.1/font/bootstrap-icons.css" /> ... ์ค‘๋žต ... <i class="bi-alarm" style="font-size: 2rem; color: cornflowerblue"></i>

XEIcon

8. opacity

opacity๋Š” ์š”์†Œ์˜ ํˆฌ๋ช…๋„๋ฅผ ์ง€์ • ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋•Œ ํˆฌ๋ช…๋„๊ฐ€ ๋“ค์–ด๊ฐ„ ์š”์†Œ ์•ˆ์˜ ๋‚ด์šฉ๋ฌผ๋„ ํ•จ๊ป˜ ํˆฌ ๋ช…ํ•ด์ง‘๋‹ˆ๋‹ค. ๊ฐ’์€ 0.0 ๊ณผ 1.0 ์‚ฌ์ด์˜ ์ˆซ์ž๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋งŒ์•ฝ ๊ฐ’์ด 0.5๋ผ๋ฉด ํˆฌ๋ช…๋„๋Š” 50%๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
<!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>opacity</title> <style> .box { width: 200px; height: 100px; background: pink; } .box-opacity1 { position: absolute; top: 0; opacity: 0.8; } .box-opacity2 { position: absolute; top:100px; opacity: 0.5; } .box-opacity3 { position: absolute; top:200px; opacity: 0.2; } </style> </head> <body> <h1>h<br>e<br>l<br>l<br>o</h1> <div class="box box-opacity1"></div> <div class="box box-opacity2"></div> <div class="box box-opacity3"></div> </body> </html>

9. color

  • color : red, #000, #000000, rgb(0, 0, 0), rgba(100, 100, 100, 0.3), transparent
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
์ถœ์ฒ˜ : ํŠœํ† ๋ฆฌ์–ผ๋กœ ๋ฐฐ์šฐ๋Š” HTML & CSS
HTML์—์„œ ์ƒ‰์ƒ ์ด๋ฆ„, RGB๊ฐ’, HEX๊ฐ’์œผ๋กœ ์ƒ‰์ƒ์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. HTML ์ƒ‰์ƒํ‘œ ํŽ˜์ด์ง€์—์„œ(https://html-color-codes.info/Korean/) ์—ฌ๋Ÿฌ ์ƒ‰์ƒ ๊ฐ’์„ ํ™•์ธํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ย 

1. ์ƒ‰์ƒ ์ด๋ฆ„

๋ธŒ๋ผ์šฐ์ €๋Š” 140 ๊ฐ€์ง€ ์ƒ‰์ƒ ์ด๋ฆ„์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ํ‘œํ˜„๋ฐฉ์‹์— ๋น„ํ•ด ์ˆ˜๊ฐ€ ์ œํ•œ์ ์ž…๋‹ˆ๋‹ค. MDN ๋ฌธ์„œ์—์„œ๋„ ํ™•์ธ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. ์ƒ‰์ƒ ์ด๋ฆ„ ๋ง๊ณ ๋„ ๋‹ค์–‘ ๋ฐฉ๋ฒ•์œผ๋กœ color๋ฅผ ํ‘œํ˜„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
โ€ป ์ฐธ๊ณ  - https://www.w3schools.com/colors/colors_names.asp

2. RGB๊ฐ’

๋น›์˜ 3์›์ƒ‰์ธ ๋นจ๊ฐ„์ƒ‰(Red), ์ดˆ๋ก์ƒ‰(Green), ํŒŒ๋ž€์ƒ‰(Blue)๋ฅผ ํ˜ผํ•ฉํ•˜์—ฌ ์ƒ‰์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋ฐฉ์‹.
RGB ๊ฐ’์€ 0 ~ 255์˜ ๊ฐ’์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.
notion imagenotion image
<head> <title>Color-RGB</title> <style> .box {width: 200px; height: 100px; background-color: RGB(102, 205,170)} </style> </head> <body> <div class="box">box</div> </body>
[์‹คํ–‰ํ™”๋ฉด]
notion imagenotion image
ย 

3. HEX ๊ฐ’(16์ง„์ˆ˜)

HEX ๊ฐ’์€ 16์ง„์ˆ˜ 6์ž๋ฆฌ ์ฝ”๋“œ๋กœ ์ƒ‰์ƒ์„ ํ‘œํ˜„ํ•˜๋Š” ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. 6์ž๋ฆฌ ์ฝ”๋“œ๋Š” ๊ฐ๊ฐ 2์ž๋ฆฌ์”ฉ ๋นจ๊ฐ„์ƒ‰, ๋…น์ƒ‰, ํŒŒ๋ž€์ƒ‰์— ๋Œ€ํ•œ ๊ฐ’์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ๋นจ๊ฐ„์ƒ‰์€ #FF0000, ๋ณด๋ผ์ƒ‰์€ #800080์œผ๋กœ ํ‘œํ˜„๋ฉ๋‹ˆ๋‹ค.
  • COD
<head> <title>Color-HEX</title> <style> .box {width: 200px; height: 100px; background-color: #F08080; } </style> </head> <body> <div class="box">box</div> </body>
ย 
  • ์‹คํ–‰ํ™”๋ฉด
ย 
notion imagenotion image
ย 
ย 
color๊ฐ€ ๋ถ™๋Š” ํ”„๋กœํผํ‹ฐ๋Š” 4๊ฐœ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์„œ background-color์™€ ๊ฐ™์ด color๊ฐ€ ๋’ค์— ๋ถ™๋Š” ๊ฒƒ์€ ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.
  • color : content์˜ ์ƒ‰์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค. ๊ธ€์ž์ƒ‰์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜์‹œ๋ฉด ๋˜์‹ญ๋‹ˆ๋‹ค.
  • color-interpolation
  • color-interpolation-filters
  • color-rendering
color๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” value๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.
  • color : red, #000, #000000, rgb(0, 0, 0), rgba(100, 100, 100, 0.3), transparent
  • initial : ์ดˆ๊ธฐ ์„ธํŒ… ๊ฐ’์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
  • inherit : ๋ถ€๋ชจ ์š”์†Œ์˜ ์†์„ฑ๊ฐ’์„ ์ƒ์†๋ฐ›์Šต๋‹ˆ๋‹ค.
color๊ฐ€ ๊ฐ€์งˆ ์ˆ˜ ์žˆ๋Š” value์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ WEBDIR ์‚ฌ์ดํŠธ์˜ ๋ธ”๋กœ๊ทธ(https://webdir.tistory.com/406) ๊ธ€์„ ์ฐธ๊ณ  ๋ฐ”๋ž๋‹ˆ๋‹ค.