在我们学习CSS样式表语言的时候,经常会遇到类似"margin"、"padding"、"border"、"outline"等一系列的属性。这些属性我们通常称之为"盒子模型属性"。在CSS中有两种不同的盒模型,分别是W3C模型和IE模型。
W3C盒模型和IE盒模型的区别在于它们计算盒子宽高的方式不同,也就导致在进行计算盒子宽度和高度的时候,得出的结果不一样。
W3C盒模型将元素的内容(content)、填充(padding)、边框(border)、外边框(margin)都计算入内,所以,盒子的宽度和高度是包括了padding和border的。IE盒模型只将元素的内容(content)的宽和高计算入内,所以盒子的宽度和高度不包括padding和border。
下面我们来看一下代码示例:
.box {
width: 200px;
height: 200px;
padding: 20px;
border: solid 1px #000;
margin: 20px;
background-color: #ccc;
} .box {
width: 200px;
height: 200px;
padding: 20px;
border: solid 1px #000;
margin: 20px;
background-color: #ccc;
box-sizing: border-box;
}