css中盒子模型
css盒模型
简介:就是用来装页面上的元素的矩形区域。CSS中的盒子模型包括IE盒子模型和标准的W3C盒子模型。
box-sizing(有3个值哦):content-box | border-box | inherit
标准盒子模型:
box-sizing: content-box;
IE盒子模型:
box-sizing: border-box;
从上图可以看出标准盒子模型与IE盒子模型区别:
标准的盒子模型:W3C (标准)盒子模型的范围包括 margin、border、padding、content,并且 content 部分不包含其他部分,width = content
。
IE盒子模型: IE 盒子模型的范围也包括 margin、border、padding、content,只不过IE 盒子模型中的 width 除了包含 content 之外,还包含了 border 和 padding,即 width = border + padding + content
上图中明显就是一个标准盒子模型
整个盒子模型的宽是:10px * 2 + 2px * 2 + 5px * 2 + 200px = 234px
整个盒子模型的高是:10px * 2 + 2px * 2 + 5px * 2 + 100px = 134px
这个图中明显就是一个IE盒子模型
整个盒子模型的宽是:10px * 2 + 200px = 220px
整个盒子模型的高是:10px * 2 + 100px = 120px
通过上面的介绍以及能够很详细的理解css中盒子模型的知识了,其中包括标准盒子模型和IE盒子模型。
那应该选择哪中盒子模型呢?浏览器应该按照哪种来执行呢?当然是“标准 W3C 盒子模型”了。怎么样才算是选择了“标准 W3C 盒子模型”呢?
很简单,就是在网页的顶部加上 DOCTYPE 声明。如果不加 DOCTYPE 声明,那么各个浏览器会根据自己的行为去理解网页,即 IE 浏览器会采用 IE 盒子模型去解释你的盒子,而 FF 会采用标准 W3C 盒子模型解释你的盒子,所以网页在不同的浏览器中就显示的不一样了。反之,如果加上了 DOCTYPE 声明,那么所有浏览器都会采用标准 W3C 盒子模型去解释你的盒子,网页就能在各个浏览器中显示一致了。