CSS ์ •๋ฆฌ(Box Model ~ Float)

ํ—ˆ๋Œ€ํ›ˆยท2021๋…„ 11์›” 12์ผ
1

๐Ÿ”Ž CSS

  • ํญํฌ์ˆ˜๋กœ ๋–จ์–ด์ง„๋‹ค๋Š” ์˜๋ฏธ์˜ 'Cascade'์™€ ์›น ํŽ˜์ด์ง€ ์Šคํƒ€์ผ์„ ์ •๋ฆฌํ•œ 'Style Sheets' = CSS์—์„œ ์Šคํƒ€์ผ์ด ์ ์šฉ๋  ๋•Œ, ์šฐ์„ ์ˆœ์œ„๋ฅผ ๊ฐ–๊ณ  ์ ์šฉ

๋ฐ•์Šค๋ชจ๋ธ

  • width์™€ height : ๊ฐ€๋กœ์™€ ์„ธ๋กœ ๊ธธ์ด
  • margin๊ณผ padding : ์—ฌ๋ฐฑ์˜ ํฌ๊ธฐ
  • border : ํ…Œ๋‘๋ฆฌ

[padding๊ณผ margin, border]

  • padding : ๋ณธ๋ฌธ ๋‚ด์šฉ๊ณผ border ์‚ฌ์ด์˜ ์—ฌ๋ฐฑ
  • border : ์„ (๊ตต๊ธฐ, ์Šคํƒ€์ผ)
  • margin : border๊ณผ ๋ฐ”๊นฅ๊ณผ์˜ ์—ฌ๋ฐฑ

  • selector{ margin: 10px, 15px, 20px, 25px; }
    12์‹œ, 3์‹œ, 6์‹œ, 9์‹œ ๋ฐฉํ–ฅ ์ ์šฉ

  • selector{ margin: 10px, 20px, 25px; }
    10px top, 20px ์ขŒ์šฐ๋กœ, 25px bottom์œผ๋กœ ์ ์šฉ


  • margin ๊ฐ’์ด -(์Œ์ˆ˜)์ด๋ฉด, ๋‹ค๋ฅธ ๊ตฌ์—ญ ์นจ๋ฒ”


Overflow

  • ๋ฒ„ํŠผ ์•ˆ์— ์ด๋ฏธ์ง€๋ฅผ ๋„ฃ์„ ๋•Œ, ์ด๋ฏธ์ง€๊ฐ€ ๋ฒ„ํŠผ ํฌ๊ธฐ๋ณด๋‹ค ํฌ๋‹ค๋ฉด overflow:hidden ์†์„ฑ ์ถ”๊ฐ€

  • button {
    overflow:hidden;
    width:100px;
    height:30px;
    {

  • ๋ฒ„ํŠผ์˜ ํฌ๊ธฐ๋งŒํผ ์ด๋ฏธ์ง€๋ฅผ ์ž˜๋ผ๋ฒ„๋ฆผ

  • visible : Overflow ๊ธฐ๋ณธ๊ฐ’, ์ฝ˜ํ…์ธ  ์ž๋ฅด์ง€ ์•Š์Œ

  • hidden : ์ฝ˜ํ…์ธ  ์š”์†Œ๋ฅผ ํฌ๊ธฐ๋งŒํผ ์ž˜๋ผ๋ฒ„๋ฆผ, ์Šคํฌ๋กค๋ฐ” ์ œ๊ณต โŒ

  • scroll : ์ฝ˜ํ…์ธ  ์š”์†Œ๋ฅผ ํฌ๊ธฐ๋งŒํผ ์ž˜๋ผ๋ฒ„๋ฆผ, ์ž˜๋ ค์ง„ ๋ถ€๋ถ„ ์Šคํฌ๋กค๋ฐ” ์ œ๊ณต โญ•


Font

  • font-family : ๊ธ€๊ผด ๋ณ€๊ฒฝ ๊ฐ€๋Šฅ

  • font-size : ๊ธ€๊ผด ํฌ๊ธฐ ๊ฐ€๋Šฅ

  • font-weight : ๊ธ€๊ผด ๊ตต๊ธฐ ๊ฐ€๋Šฅ


Opacity

  • ์š”์†Œ ํˆฌ๋ช…๋„ ์ง€์ •

  • 0.0 ~ 1.0 ์‚ฌ์ด์˜ ์ˆซ์ž ์ง€์ •, ๋งŒ์•ฝ ๊ฐ’์ด 0.5๋ผ๋ฉด ํˆฌ๋ช…๋„๋Š” 50%


Box

  • box-sizing : ๋ฐ•์Šค์˜ ํฌ๊ธฐ ๊ธฐ์ค€ ์ •ํ•จ

  • display : ๋ฐ•์Šค์˜ ์„ฑ์งˆ ์ง€์ •, ์š”์†Œ ์–ด๋–ป๊ฒŒ ๋ณด์—ฌ์งˆ ์ง€

  • inline : ์ค„๋ฐ”๊ฟˆ โŒ, width์™€ height, margin-top, margin-bottom ๊ฐ’์„ ์ง€์ •

  • block : ํ•ญ์ƒ ์ค„๋ฐ”๊ฟˆ โญ•, width, height, margin, padding ๋“ฑ ๋ชจ๋“  ๊ฐ’์„ ์ง€์ •

  • inline-block : 'inline' ์ฒ˜๋Ÿผ ํ•œ ์ค„์— ์—ฌ๋Ÿฌ ์š”์†Œ๊ฐ€ ์กด์žฌํ• ์ˆ˜ ์žˆ์Œ, width, height, margin, padding ๋“ฑ ๋ชจ๋“  ๊ฐ’์„ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Œ. inline, block ์†์„ฑ์˜ ํŠน์ง•์ด ํ•จ๊ป˜ ์กด์žฌ

  • contents : ์„ ํƒํ•œ ์š”์†Œ์˜ ๋‚ด์šฉ ์•ž์ด๋‚˜ ๋’ค์— ์ฝ˜ํ…์ธ ๋ฅผ ๋ถ™์ž„

  • flex : ๋ ˆ์ด์•„์›ƒ์„ ๋‹ค๋ฃฐ ๋•Œ ํ•˜๋‚˜์˜ ํ–‰ ๋˜๋Š” ์—ด์„ ๋‹ค๋ฃธ (1์ฐจ์› ๋ ˆ์ด์•„์›ƒ)

  • grid : 2์ฐจ์› ๋ ˆ์ด์•„์›ƒ์„ ์„ค์ •ํ•˜๋Š”๋ฐ ์‚ฌ์šฉ


Text

  • line-height : ๊ธ€์ž ๋†’์ด ์ง€์ •

  • letter-spacing : ๊ธ€์ž ์‚ฌ์ด ๊ฐ„๊ฒฉ ์กฐ์ ˆ

  • text-align : ํ…์ŠคํŠธ ์ •๋ ฌ

  • left : (๊ธฐ๋ณธ๊ฐ’) ์™ผ์ชฝ ์ •๋ ฌ
    right, center : ์˜ค๋ฅธ์ชฝ, ๊ฐ€์šด๋ฐ ์ •๋ ฌ
    justify : ์–‘์ชฝ ์ •๋ ฌ

  • 1๋ฒˆ ๊ธ€์€ text_initial, 2๋ฒˆ ๊ธ€์€ text_justify๋กœ ์–‘์ชฝ ์—ฌ๋ฐฑ์˜ ํฌ๊ธฐ๋ฅผ ๋งž์ถ”๊ธฐ ์œ„ํ•ด ๊ธฐ์กด ์ •๋ ฌ๊ณผ ๋‹ค๋ฅธ ์–‘์ชฝ ์ •๋ ฌ

  • ๊ฐ€๋กœ, ์„ธ๋กœ ์ •๋ ฌ์€ padding, margin ์†์„ฑ์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์‚ฌ์šฉ

  • text-indent : ํ…์ŠคํŠธ ์‹œ์ž‘ ์ „ ๋นˆ๊ณต๊ฐ„ ์„ค์ •(๋“ค์—ฌ์“ฐ๊ธฐ ๊ณต๊ฐ„)

  • text-decoration : ํ…์ŠคํŠธ์— ๋ถ™๋Š” ๋ผ์ธ ๊พธ๋ฉฐ์ฃผ๊ธฐ(์Šคํƒ€์ผ ์šฉ๋„๋ณด๋‹จ <a>ํƒœ๊ทธ ๊ธฐ๋ณธ ์Šคํƒ€์ผ ์ œ๊ฑฐ)


Position ๐ŸŒŸ

์›น ํŽ˜์ด์ง€์—์„œ html ํƒœ๊ทธ, id, class ๋ฐ•์Šค ๋“ฑ์˜ ์œ„์น˜ ์ง€์ •ํ•˜๋Š” ์†์„ฑ

  • ํŽ˜์ด์ง€ ๋ ˆ์ด์•„์›ƒ ๊ฒฐ์ •

  • [static] : (๊ธฐ๋ณธ๊ฐ’), html ์“ด ํƒœ๊ทธ ์ˆœ์œผ๋กœ ์œ„์น˜ ์ง€์ •
    <๊ตณ์ด ๊ธฐ์ž…โŒ, ๋ถ€๋ชจ ๊ฐ์ฒด position ์†์„ฑ๊ฐ’๊ณผ ๋‹ค๋ฅผ๋•Œ ์‚ฌ์šฉ>

  • [relative] : ์ž์‹ ์ด ์žˆ์–ด์•ผ ํ•˜๋Š” ์œ„์น˜ ๊ธฐ์–ต

  • position: relative; ์ฃผ๊ณ  left: 50px; ์ž…๋ ฅํ•˜๋ฉด
    => ๋ณธ์ธ์˜ static ์ž๋ฆฌ์—์„œ ์™ผ์ชฝ์œผ๋กœ 50px ์œ„์น˜

  • [absolute] : 'ma way !' ๊ธฐ์ค€์ ์ด html, ๊ธฐ๋ณธ์ ์œผ๋กœ ์™ผ์ชฝ ์ƒ๋‹จ์„ ๋ณธ๋ž˜ ์œ„์น˜๋ผ๊ณ  ์ƒ๊ฐํ•˜์ง€๋งŒ, (relative, absolute, fixed ๋“ฑ) ๋ถ€๋ชจ ์š”์†Œ๊ฐ€ ์žˆ๋‹ค๋ฉด ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋ถ€๋ชจ ๋ฐ•์Šค ๋‚ด ๊ธฐ์ค€์„ ์žก์Œ

  • [fixed] : ์Šคํฌ๋กค ์˜ฌ๋ฆฌ๊ฑฐ๋‚˜ ๋‚ด๋ฆด ๋•Œ, ํŠน์ • ๋ฐ•์Šค ๊ณ ์ •

  • [sticky] : ๋ถ€๋ชจ์˜ ์Šคํฌ๋กค ๋ฐ•์Šค ์•ˆ์—์„œ ๊ณ ์ •

  • [z-index] => ์ˆซ์ž๊ฐ€ ๋†’์„์ˆ˜๋ก ์šฐ์„ ์ˆœ์œ„ ๐Ÿ‘†๐Ÿป

  • z-index: 0; = ์ž์‹ ์˜ ์œ„์น˜


Float

  • ๊ทธ๋ฆผ ๋”ฐ๋ผ ํ˜น์€ ์ฝ˜ํ…์ธ ์— ๋”ฐ๋ผ ํ๋ฅด๋Š” ํ…์ŠคํŠธ ๋ ˆ์ด์•„์›ƒ์„ ์›น์—์„œ ๊ตฌํ˜„ํ•˜๊ธฐ ์œ„ํ•จ

  • ๋ธ”๋ก์€ ๊ฐ€๋กœ ์ „์ฒด ๊ณต๊ฐ„์ฐจ์ง€, float์€ ํ•ด๋‹น ๊ณต๊ฐ„๋งŒํผ๋งŒ ์ฐจ์ง€

  • [๋ฌธ์ œ์ ] : ์ž์‹์ด ๋ชจ๋‘ float ์†์„ฑ์ผ ๋•Œ, ๋ถ€๋ชจ ์š”์†Œ๊ฐ€ ๋ชป ์•Œ์•„๋ด„

  • [ํ•ด๊ฒฐ๋ฒ•]

1. ๋ถ€๋ชจ ์š”์†Œ์— overflow ์†์„ฑ ์ถ”๊ฐ€
2. ๋ถ€๋ชจ ๋†’์ด๊ฐ’ ์ง์ ‘ ์ง€์ •
3. ํ˜•์ œ ์š”์†Œ์— clear ์†์„ฑ ์‚ฌ์šฉ
4. ::ater ๊ฐ€์ƒ์š”์†Œ

profile
https://big-huni.tistory.com // ์ด์ „ํ•ฉ๋‹ˆ๋‹ค.

0๊ฐœ์˜ ๋Œ“๊ธ€