Home  >  Article  >  Web Front-end  >  Comprehensively review the relevant knowledge points of the CSS box model

Comprehensively review the relevant knowledge points of the CSS box model

青灯夜游
青灯夜游forward
2023-04-12 18:05:211431browse

The CSS box model is a key and difficult point in the basics of CSS, so it is often used by interviewers to examine candidates’ mastery of front-end basics. This article will comprehensively sort out the knowledge points of the CSS box model.

Comprehensively review the relevant knowledge points of the CSS box model

Let’s look at an example first: What is the total width of the div element below?

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
    <title>CSS 盒模型(https://github.com/webharry/fe-interview)</title>
<style>
div {
    background-color: lightgrey;
    width: 200px;
    border: 10px solid yellow;
    padding: 10px;
    margin: 20px;
}
</style>
</head>
<body>
    <div>这里是盒子内的实际内容。有 10px 内间距,20px 外间距、10px 黄色边框。</div>
</body>
</html>

To answer this question, we first have to understand the CSS box model.

What is the CSS box model?

Each HTML element consists of a rectangular frame (box), called the box model. The CSS box model defines the dimensions and margins of an HTML element.

Each part of the box model

To form a box in CSS requires:

  • Content box: this area It is used to display content. The size can be set by width and height.
  • Padding box: The blank area enclosed outside the content area; the size is set through the padding related properties.
  • Border box: The border box wraps the content and padding. The size is set through border related properties.
  • Margin box: This is the outermost area, the blank space between the box and other elements. The size is set through the margin related properties.

As shown in the figure:

CSS 盒模型各个部分

CSS has two box models: the standard box model and the IE box model.

  • Standard box model: The width and height of an element only include content, excluding padding, border and margin.
  • IE box model: The width and height of an element include content, padding, and border, but do not include margin.

What is the difference between the two box models?

The difference between the two box models is how they calculate the width and height of an element, and how they handle the element's padding, borders, and margins.

  • In the standard box model, the width and height of an element only include the content, so when setting the width and height, you need to consider the impact of padding, borders, and margins on them.
    • As shown in the figure:
    Comprehensively review the relevant knowledge points of the CSS box model
  • In the IE box model, the width and height of the element include padding and borders, so there is no need to set the width and height. You need to consider the impact of padding and borders on them.
    • As shown in the picture:
    Comprehensively review the relevant knowledge points of the CSS box model

##Important: When you specify the width (width) and height (height) of a CSS element ) properties, you are just setting the width and height of the content area (content).

How to convert between the two box models?

You can specify which box model to use by setting the CSS box-sizing property. By default, the value of the box-sizing property is content-box, which uses the standard box model. It can be set to border-box, which uses the IE box model.

Written at the end

Now, let’s look at the example at the beginning of the article. The answer is obvious. Because by default, the value of the box-sizing property is content-box, which uses the standard box model. So the total width of the div element in the example is 200 10x2 10x2=240px.

(Learning video sharing:

web front-end)

The above is the detailed content of Comprehensively review the relevant knowledge points of the CSS box model. For more information, please follow other related articles on the PHP Chinese website!

Statement:
This article is reproduced at:juejin.cn. If there is any infringement, please contact admin@php.cn delete