CSS box model
![]() | This article has multiple issues. Please help improve it or discuss these issues on the talk page. (Learn how and when to remove these messages)
|
![]() | It has been suggested that Internet Explorer box model bug be merged into this article. (Discuss) Proposed since October 2017. |

In web development, the CSS box model refers to the composition of a webpage or HTML page from blocks or boxes using CSS. Specifically, the box model describes how the size of each such block and its content is determined through styling instructions. The guidelines of the box model are described by the World Wide Web Consortium (W3C).
Specifics

Each box has five parameters:
- the height and width describe dimensions of the actual content of the box (text, images, ...)
- the padding describes the space between this content and the border of the box
- the border is any kind of line (solid, dotted, dashed...) surrounding the box, if present
- the margin is the space around the border
The total width of a box is therefore the width of the content, plus (left and right) padding, plus (left and right) border, plus (left and right) margin. Similarly, the total height of a box equals the height of the content, plus (top and bottom) padding, plus (top and bottom) border, plus (top and bottom) margin.
For example, the following CSS code
.myClass {
width: 200px;
height: 100px;
padding: 10px;
border: solid 10px black;
margin: 10px;
}
would specify the box dimensions of each block belonging to 'myClass'. Moreover, each such box will have total height 160px and width 260px.
Bugs
While the W3C recommendations specify the box model in a clear and unambiguous way, some older browsers do not apply it correctly. Therefore, they may not display the box dimensions of a web page correctly. The most notable bug in correctly applying the box model occurs in older versions of Internet Explorer, and is known as the Internet Explorer box model bug.