๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
  • ์žฅ์›์ต ๊ธฐ์ˆ ๋ธ”๋กœ๊ทธ
๐Ÿ“บ Front End/-- HTML & CSS

[CSS] Css Box-Model๊ณผ box-sizing์˜ border-box ์†์„ฑ

by Wonit 2020. 10. 5.

์ง€๋‚œ ์‹œ๊ฐ„์— ์šฐ๋ฆฌ๋Š” box-model์˜ ํฌ๊ธฐ ์†์„ฑ์„ ๊ตฌํ•˜๋Š” ์ž‘์—…์„ ํ–ˆ์—ˆ๋‹ค.

ํ•˜์ง€๋งŒ

์ง€๋‚œ ์‹œ๊ฐ„์—๋„ ๋ง ํ–ˆ๋“ฏ์ด ๋ฐ•์Šค ๋ชจ๋ธ๋ง์„ ์ ์šฉํ•œ ํ›„ ๋ฐ˜์‘ํ˜• ์›น์„ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ํฌ๊ธฐ์˜ ๋‹จ์œ„๋ฅผ px๊ฐ€ ์•„๋‹Œ % ๋‹จ์œ„๋กœ ์ ์šฉํ–ˆ๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž.

 

๊ทธ๋Ÿผ ์•„๋ž˜์˜ Element์˜ ์†์„ฑ ๊ฐ’ ๋‹จ์œ„๋Š” px๊ฐ€ ์•„๋‹Œ %๊ฐ€ ๋˜์–ด์•ผ ํ•œ๋‹ค.

๊ทธ๋Ÿผ ์ •๋ง ์ •๋ง ์ •๋ง ๋ณต์žกํ•ด์ง„๋‹ค.

 

ํž˜๋“ค๊ฒŒ ์šฐ๋ฆฌ๋Š” border, margin, padding ๊ฐ’์„ ๊ตฌํ•ด์„œ (

๋ฌผ๋ก  ๊ทธ๋ ‡๊ฒŒ ํž˜๋“ค์ง„ ์•Š์ง€๋งŒ

)

width์™€ height์˜ ๊ณ„์‚ฐ์‹์— ๋Œ€์ž…ํ•˜์—ฌ ๊ตฌํ–ˆ์ง€๋งŒ ์ด ๊ณ„์‚ฐ์‹์ด %๊ฐ€ ๋“ค์–ด๊ฐ€๋ฉด ๋‹จ์ˆœ + ๊ณ„์‚ฐ์œผ๋กœ ํž˜๋“ค๋‹ค๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

+ ์—ฐ์‚ฐ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ BOX ๊ณ„์‚ฐ์‹

์ด๋Ÿฌํ•œ ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์ด์žˆ๋‹ค.

 

๋ฐ”๋กœ Box-sizing์ด๋‹ค.

box-sizing

์œ„์˜ ์ ˆ๋Œ€ ๋‹จ์œ„์—์„œ ์ƒ๋Œ€ ๋‹จ์œ„๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋ฌธ์ œ์ ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ์šฐ๋ฆฌ๋Š” box-sizing์— ๋Œ€ํ•ด์„œ ์•Œ์•„์•ผ ํ•œ๋‹ค.

 

box-sizing ์†์„ฑ์˜ ๊ธฐ๋ณธ Default๋Š” content-box์ด๋‹ค.

 

์ด content-box์„ border-box๋กœ ๋ณ€๊ฒฝํ•ด์ฃผ๋ฉด, width ์†์„ฑ๊ฐ’์€ content์˜์—ญ ๋ฟ ์•„๋‹ˆ๋ผ padding๊ณผ border์˜์—ญ๊นŒ์ง€ ํฌํ•จํ•˜๊ฒŒ ๋œ๋‹ค.

์ด๊ฒŒ ๋ฌด์Šจ ์†Œ๋ฆฌ๋ƒ?

์•„๋ž˜์˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋œ๋‹ค.


์ฒซ ๋ฒˆ์งธ ๊ทธ๋ฆผ์€ box-sizing์˜ ๊ธฐ๋ณธ ์†์„ฑ์ธ content-box์ด๊ณ  ๋‘ ๋ฒˆ์งธ ๊ทธ๋ฆผ์€ border-box์ด๋‹ค.

 

๊ทธ๋ž˜์„œ ๊ฒฐ๊ตญ box-sizing: content-box์˜ width์—์„œ padding๊ณผ border์„ ๋นผ๋ฉด ํ•ด๋‹น ์˜์—ญ์˜ content ๊ฐ’์ด ๋‚˜์˜ค๊ฒŒ ๋œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

 

๋Œ“๊ธ€