标准盒模型和怪异盒模型有哪些区别?
盒模型的指定:
在CSS3中,我们可以通过设置 box-sizing 的值来决定具体使用何种盒模型:
- box-sizing: content-box; 标准盒模型
- box-sizing: border-box; 怪异盒模型
标准盒模型:
在标准盒模型下,元素的宽(width)和高(height)值即为盒模型中内容(content)的实际宽高值。
因此,计算一个元素宽度的公式如下(不考虑margin, margin是外边距, 如果是计算占用页面的空间, 就要带上margin):
盒子宽度 =
border-left
+padding-left
+width
+padding-right
+border-right
占据页面宽度 =
margin-left
+border-left
+padding-left
+width
+padding-right
+border-right
+margin-right
怪异盒模型:
在怪异盒模型下,元素的 width 和 height 值却不是 content 的实际宽高,而是去除 margin 后剩下的元素占用区域的宽高,即:
因此,计算一个元素占用了页面总宽度的公式如下:
盒子宽度 =
width
盒子占据页面宽度 =
margin-left
+width
+margin-right