--- title: Box-sizing reset tags: layout --- Resets the box-model so that `width`s and `height`s are not affected by their `border`s or `padding`. ```html
border-box
content-box
``` ```css 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; } ``` #### Explanation 1. `box-sizing: border-box` makes the addition of `padding` or `border`s not affect an element's `width` or `height`. 2. `box-sizing: inherit` makes an element respect its parent's `box-sizing` rule. #### Browser support - https://caniuse.com/#feat=css3-boxsizing