TIL - Box model

์†Œ๋ฐยท2022๋…„ 4์›” 6์ผ
0

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
9/17
post-thumbnail

๐Ÿ“Œ ๋ฐ•์Šค์˜ ์œ ํ˜•

1. ๋ธ”๋ก ๋ฐ•์Šค

  • ์–‘์˜†์œผ๋กœ ๊ณต๊ฐ„ 100% ์‚ฌ์šฉ ; ์ˆ˜์ง ์ •๋ ฌ
  • width, height ์†์„ฑ ์‚ฌ์šฉํ•˜์—ฌ ์Šคํƒ€์ผ ๊ฑดํŠธ๋กค ๊ฐ€๋Šฅ
  • padding, margin, border ์ด์šฉํ•˜์—ฌ ์Šคํƒ€์ผ ์ปจํŠธ๋กค ๊ฐ€๋Šฅ

2. ์ธ๋ผ์ธ ๋ฐ•์Šค

  • ์ปจํ…์ธ  ๋ฐ•์Šค๋งŒํผ์˜ ํฌ๊ธฐ ๊ฐ€์ง ; ์ˆ˜ํ‰ ์ •๋ ฌ
  • width, height ์†์„ฑ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์Œ
  • padding, border ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์ง€๋งŒ margin์€ ์ขŒ์šฐ๋งŒ ์กฐ์ ˆ ๊ฐ€๋Šฅ

3. ์ธ๋ผ์ธ ๋ธ”๋ก ๋ฐ•์Šค

  • inline ์ฒ˜๋Ÿผ ์ˆ˜ํ‰ ์ •๋ ฌ ๊ฐ€๋Šฅ
  • block ์ฒ˜๋Ÿผ width, height, margin, padding, border ์ง€์ • ๊ฐ€๋Šฅ.

๐Ÿ“Œ ๋ฐ•์Šค์˜ ์œ ํ˜• ๊ฒฐ์ •ํ•˜๋Š” ์†์„ฑ : display

1. ์™ธ๋ถ€ ๋””์Šคํ”Œ๋ ˆ์ด ํƒ€์ž…

  • ์™ธ๋ถ€์˜ ๋‹ค๋ฅธ ํ˜•์ œ, ๋ถ€๋ชจ ๋ฐ•์Šค๋“ค๊ณผ์˜ ๋ฐฐ์น˜์— ์˜ํ–ฅ์„ ๋ฏธ์นจ
div{ display:inline }

div{ display:block }

div{ display:inline-block }

2. ๋‚ด๋ถ€ ๋””์Šคํ”Œ๋ ˆ์ด ํƒ€์ž…

  • flex : ๋‚ด๋ถ€ ์ž์‹ ์š”์†Œ๋“ค์˜ ์œ„์น˜๋ฅผ ๋ถ€๋ชจ ์ปจํ…Œ์ด๋„ˆ ์š”์†Œ์•ˆ์—์„œ X์ถ• ํ˜น์€ Y์ถ•์˜ ๋‹จ๋ฐฉํ–ฅ์œผ๋กœ ์„ค์ •
  • grid : ๋‚ด๋ถ€ ์ž์‹ ์š”์†Œ๋“ค์˜ ์œ„์น˜๋ฅผ ๋ถ€๋ชจ ์ปจํ…Œ์ด๋„ˆ ์š”์†Œ์•ˆ์—์„œ X์ถ•๊ณผ Y์ถ•์„ ๋ชจ๋‘ ์ด์šฉํ•ด ๋ฐฐ์น˜

๐Ÿ“Œ ๋งˆ์ง„ ๊ฒน์นจ ํ˜„์ƒ (margin collapsing)

  • '์ธ์ ‘ํ•˜๋Š”' ๋ธ”๋Ÿญ์š”์†Œ '์ƒํ•˜๋‹จ' ๋งˆ์ง„ ๊ฒน์น˜๋Š” ๊ฒƒ (์ขŒ์šฐ๋Š” X)
  • ํฐ ๊ฐ’์„ ๊ฐ€์ง„ margin ๊ฐ’์œผ๋กœ ๊ฒน์นœ๋‹ค.

๋งˆ์ง„๊ฒน์นจ ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•

๐Ÿ“Œ ๋Œ€์ฒด css ๋ฐ•์Šค ๋ชจ๋ธ

ํ‘œ์ค€ css ๋ฐ•์Šค ๋ชจ๋ธ์—์„œ ์š”์†Œ์˜ ํฌ๊ธฐ๋Š” ์ปจํ…์ธ  ๋ฐ•์Šค + ๋ณด๋” ๋ฐ•์Šค +ํŒจ๋”ฉ๊ฐ’์„ ๋ชจ๋‘ ๋”ํ•ด ์ •ํ•ด์ง
๋Œ€์ฒด ๋ฐ•์Šค ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•˜์—ฌ width๊ฐ’๊ณผ height ๊ฐ’์œผ๋กœ ๋ฐ•์Šค ํฌ๊ธฐ ์ •ํ•ด์ง/

box-sizing

<head>
<style>
        * {margin: 0;}
        h1 {
            width: 100px;
            height: 30px;
            border: 3px solid #228B22;
            padding: 10px;
            box-sizing: border-box;
        }
    </style>
</head>
<body>
    <h1></h1>
</body>
profile
์ƒ๊ฐ์ด ๊ธธ๋ฉด ์šฉ๊ธฐ๋Š” ์‚ฌ๋ผ์ง„๋‹ค.

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