box-sizing
속성의 이해
box-sizing
속성은
요소의 크기를 계산할 때 크기의 기준을 설정합니다.
content-box
(콘텐츠 영역)만 계산할지,border-box
(콘텐츠 + 패딩 + 테두리 모두 포함)를 기준으로 계산할지 지정합니다.
content-box
와 border-box
을 설명하는 아래의 그림을 참고하세요.
다음의 예시로 box-sizing
속성이 어떻게 구현되는지 살펴보겠습니다.
content-box: 콘텐츠 영역만 계산
Div-A
border-box: 콘텐츠 + 패딩 + 테두리 모두 포함 계산
Div-B
형식 구문
구문
형식 정의
참고하세요!
<button>
요소는 브라우저가 설정한 초깃값이 border-box
입니다.
주의하세요!
box-sizing
의 값에 padding-box
는 없습니다.
값
box-sizing
은 content-box
와 border-box
중에서 요소의 사이즈를 어느 것으로 기준으로 할지를 지정합니다.
content-box
만약 요소에 padding
이나 border
가 있다면, 실제 요소의 크기보다 더 크게 보입니다.
border-box
width
= 콘텐츠 너비 +padding-left
+padding-right
+border-left-width
+border-right-width
height
= 콘텐츠 높이 +padding-top
+padding-bottom
+border-top-width
+border-bottom-width
예제
div-1
div-2
이처럼, box-sizing: content-box;
보다는 box-sizing: border-box;
가 요소의 크기를 지정하는데 직관적입니다. 모든 요소에 box-sizing: border-box;
로 적용하려면 다음과 같이 적용하면 됩니다.
브라우저 호환성
속성 |
데스크탑 Chrome
|
데스크탑데스크탑 Edge
|
데스크탑 Firefox
|
Safari
|
---|---|---|---|---|
box-sizing
|
10 | 12 | 29 | 5.1 |
명세서
명세서 사양 | |
---|---|
box-sizing
|
CSS Box Sizing Module Level 3 #box-sizing |
같이 보기
- CSS width 속성 – 요소의 너비 지정
- CSS min-width 속성 – 요소의 최소 너비 지정
- CSS max-width 속성 – 요소의 최대 너비 지정
- CSS height 속성 – 요소의 너비 지정
- CSS min-height 속성 – 요소의 최소 높이 지정
- CSS max-height 속성 – 요소의 최대 높이 지정
- CSS padding 속성 – 요소 안쪽의 여백 간격 지정
- CSS background-origin 속성 - 배경 이미지의 포지셔닝 기준 영역 설정
- CSS background-clip 속성 - 요소의 배경이 어디까지 차지할 지 설정
- CSS background-position 속성 – 배경 이미지의 시작 위치 지정
- CSS aspect-ratio 속성 : 요소의 가로 세로 비율 설정
- CSS 스크롤바(Scrollbars) 커스텀 스타일링