thumbnail
Box Model(박스 모델)과 box-sizing 속성
Sep 27, 2022

Box Model이란?

Box model

브라우저의 렌더링 엔진은 HTML 요소를 나타낼 때 CSS Box Model에 맞춰 그려낸다. 박스 모델은 4가지 영역인 margin, border, padding, content로 구분된다.

content

내용을 표시하는 영역으로, widthheight로 크기를 조정할 수 있다.

.box { width: 250px; height: 100px; } content

padding

content 주위의 공백을 뜻하며, padding 속성으로 지정할 수 있다.

.box { width: 250px; height: 100px; padding: 50px; } padding

border

content와 padding을 포함하는 영역의 테두리를 지정한다. border 속성을 이용하면 된다.

.box { width: 250px; height: 100px; padding: 50px; border: 1px solid #000; } border

margin

content, padding, border를 포함한 전체 요소 주위의 공백을 뜻하며, margin 속성으로 지정할 수 있다.

.box { width: 250px; height: 100px; margin: 50px; padding: 50px; border: 1px solid #000; } margin

box-sizing

박스 모델은 box-sizing이라는 속성으로 요소의 너비와 높이를 계산하는 방식을 지정할 수 있다. 두 가지 값을 가질 수 있는데, 아래와 같다.

  • content-box(default): content 영역만을 기준으로 계산된다.
  • border-box: padding, border, content 영역을 합한 영역을 기준으로 계산된다.

content-box

content-box일 경우 width에 250px 값을 주면 content 영역의 너비만 250px이 되며 paddingborder는 별개로 계산된다.

.box { box-sizing: content-box; width: 250px; height: 100px; margin: 20px; padding: 10px; border: 2px solid #000; } content-box

border-box

반면에 border-box일 경우 width에 250px 값을 주면 content, padding, border 영역의 너비를 모두 합한 값이 250px이 된다. padding이 10px, border가 2px이면 content 영역의 너비는 양쪽 padding, border 값을 제외한 226px이 된다.

.box { box-sizing: border-box; width: 250px; height: 100px; margin: 20px; padding: 10px; border: 2px solid #000; } border-box

References

Table Of Contents
nxnaxx blog © 2022-2024 Powered By Gatsby.