Box-sizing 盒类型
它主要用来告诉浏览器怎么计算元素的展示宽高的。
1. 官方定义
2. 解释
在开发过程中,当有一个 固定宽高的元素带有 boder 或 padding 的时候,它在 IE 中展示和 Chrome 中是不同的,如果我们不设置这个属性,那么在 IE浏览器中它的实际宽高是小于 Chrome 浏览器的这是为什么呢?
下面就是一个盒模型的结构图
3. 语法
content-Box 的计算方式是:
width = content width;
height = content height
border-Box 的计算方式是:
width = border + padding + content width
heigth = border + padding + content heigth
4. 兼容性
IE | Edge | Firefox | Chrome | Safari | Opera | ios | android |
---|---|---|---|---|---|---|---|
10+ | 12+ | 28+ | 4+ | 6.1+ | 12.1+ | 7+ | 4.4 |
5. 实例
- 不是设置
Box-sizing
分别在不同浏览器中的展示。
<div class="demo">网 CSS3 学习分享</div>
.demo{
width:px;
height:px;
background:#000;
color:#fff;
padding:px;
border:px solid red;
}
效果图
说明:左侧是 Chorme 浏览器右侧是低版本 IE 浏览器。
.demo{
width:px;
height:px;
background:#000;
color:#fff;
padding:px;
border:px solid red;
Box-sizing:border-Box;
}
效果图
.demo{
width:px;
height:px;
background:#000;
color:#fff;
padding:px;
border:px solid red;
Box-sizing:content-Box;
}
效果图
6. 经验分享
7. 小结
如果不设置 Box-sizing
不同浏览器会有不同的计算方式。