CSS3盒子模型的理解

CSS3盒子模型的理解

所有HTML元素可以看作盒子,在CSS中,"box model"这一术语是用来设计和布局时使用。
CSS盒模型本质上是一个盒子,封装周围的HTML元素,一个盒子是由 4 部分组成的:内容(content)、内边距(padding)、边框(border)和外边距(margin)。
盒子模型分为两种:标准盒子模型和IE盒子模型,由 W3C 和 IExplore 制定的标准。

如果给某个元素设置样式

.box {
    
    
    width: 200px;
    height: 200px;
    padding: 10px;
    border: 1px solid #eee;
    margin: 10px;
}

一、标准盒子模型:盒子的实际尺寸 = 内容(设置的宽/高) + 内边距 + 边框
在这里插入图片描述
所以 .box 元素内容的宽度就为 200px,而实际的宽度则是 width + padding-left + padding-right + border-left-width + border-right-width = 200 + 10 + 10 + 1 + 1 = 222。

二、IE 盒模型:盒子的实际尺寸 = 设置的宽/高 = 内容 + 内边距 + 边框
在这里插入图片描述
.box 元素所占用的实际宽度为 200px,而内容的真实宽度则是 width - padding-left - padding-right - border-left-width - border-right-width = 200 - 10 - 10 - 1 - 1 = 178。

总结:
目前高版本的浏览器基本上默认都是使用标准盒模型,而像 IE6 这种老古董才是默认使用 IE 盒模型的。
在 CSS3 中新增了一个属性 box-sizing,允许开发者来指定盒子使用什么标准,它有 2 个值:
content-box:标准盒模型;
border-box:IE 盒模型;

猜你喜欢

转载自blog.csdn.net/zhengcaocao/article/details/115541196