์ง๋ ์๊ฐ์ ์ฐ๋ฆฌ๋ box-model์ ํฌ๊ธฐ ์์ฑ์ ๊ตฌํ๋ ์์ ์ ํ์๋ค.
ํ์ง๋ง
์ง๋ ์๊ฐ์๋ ๋ง ํ๋ฏ์ด ๋ฐ์ค ๋ชจ๋ธ๋ง์ ์ ์ฉํ ํ ๋ฐ์ํ ์น์ ๋ง๋ค๊ธฐ ์ํด ํฌ๊ธฐ์ ๋จ์๋ฅผ px๊ฐ ์๋ % ๋จ์๋ก ์ ์ฉํ๋ค๊ณ ๊ฐ์ ํด๋ณด์.
๊ทธ๋ผ ์๋์ Element์ ์์ฑ ๊ฐ ๋จ์๋ px๊ฐ ์๋ %๊ฐ ๋์ด์ผ ํ๋ค.
๊ทธ๋ผ ์ ๋ง ์ ๋ง ์ ๋ง ๋ณต์กํด์ง๋ค.
ํ๋ค๊ฒ ์ฐ๋ฆฌ๋ border, margin, padding ๊ฐ์ ๊ตฌํด์ (
๋ฌผ๋ก ๊ทธ๋ ๊ฒ ํ๋ค์ง ์์ง๋ง
)
width์ height์ ๊ณ์ฐ์์ ๋์ ํ์ฌ ๊ตฌํ์ง๋ง ์ด ๊ณ์ฐ์์ด %๊ฐ ๋ค์ด๊ฐ๋ฉด ๋จ์ + ๊ณ์ฐ์ผ๋ก ํ๋ค๋ค๋ ๊ฒ์ ์ ์ ์๋ค.
์ด๋ฌํ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ด์๋ค.
๋ฐ๋ก 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 ๊ฐ์ด ๋์ค๊ฒ ๋๋ค๋ ๊ฒ์ด๋ค.
๋๊ธ