Smal SEO Tool

The CSS Box Model

All HTML elements can be considered as boxes. In CSS, the term "box model" is used when talking about design and layout.

The CSS box model is essentially a box that wraps around every HTML element. It consists of: margins, borders, padding, and the actual content. The image below illustrates the box model:

CSS Box Model Diagram

Explanation of the different parts:

  • Content - The content of the box, where text and images appear.
  • Padding - Clears an area around the content. The padding is transparent.
  • Border - A border that goes around the padding and content.
  • Margin - Clears an area outside the border. The margin is transparent.

Example

css
div {
  width: 300px;
  border: 15px solid green;
  padding: 50px;
  margin: 20px;
}

In this example, the total width of the element will be 300px (width) + 100px (left + right padding) + 30px (left + right border) + 40px (left + right margin) = 470px.

To avoid this, you can use the box-sizing: border-box; property, which tells the browser to include padding and border in the element's total width and height.

Test Yourself with an Exercise

From the inside out, which is the correct order of the box model components?