Box-sizing reset

Sang
Written by Sang on
Box-sizing reset

Resets the box-model so that widths and heights are not affected by their borders or padding.

<div class="box">border-box</div>
<div class="box content-box">content-box</div>
html {
	box-sizing: border-box;
}
*,
*::before,
*::after {
	box-sizing: inherit;
}
.box {
	display: inline-block;
	width: 150px;
	height: 150px;
	padding: 10px;
	background: tomato;
	color: white;
	border: 10px solid red;
}
.content-box {
	box-sizing: content-box;
}
Demo

See the pen on CodePen.

Explanation

  • box-sizing: border-box makes the addition of padding or borders not affect an element’s width or height.
  • box-sizing: inherit makes an element respect its parent’s box-sizing rule.

Browser support

:white_check_mark: No caveats.

caniuse

source: 30 seconds of knowledge