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
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
No caveats.
source: 30 seconds of knowledge