标准盒模型与IE盒模型的区别

本文介绍了CSS盒模型的两种主要类型:标准盒模型和IE怪异盒模型。标准盒模型中,元素的width/height不包含padding和border,而IE盒模型则相反。通过box-sizing属性,可以切换元素的盒模型行为。当box-sizing设置为border-box时,元素的总尺寸包括padding和border,如示例代码所示,导致元素的实际高度为100px而非140px。
摘要由CSDN通过智能技术生成

标准盒模型

<style>
  .box {
    width: 200px;
    height: 100px;
    padding: 20px;
  }
</style>
<div class="box">
  盒子模型
</div>

在这里插入图片描述
标准盒模型的模型图如上,不难看出它的宽高定义为:

盒子总宽=width+padding+border+margin
盒子总高=height+padding+border+margin

所以标准盒子的width/height只有文本自身的宽高,不包含padding+border

所以在上述代码中,元素的height设置为100px,但因为padding的存在,所以它的盒子高140px。

IE怪异盒模型

同样看看它的盒模型图:
在这里插入图片描述
可以看出,它的盒子宽高如下:

盒子总宽=width+margin
盒子总高=height+margin

由此可见,IE盒模型的width/height是包含padding+border的。

Box sizing

CSS 中的 box-sizing 属性定义了引擎如何计算一个元素的总宽度和总高度。

  • content-box 默认值,元素的 width/height 不包含padding,border,与标准盒子模型表现一致。
  • border-box 元素的 width/height 包含 padding,border,与怪异盒子模型表现一致。
  • inherit 指定 box-sizing 属性的值,应该从父元素继承。

如果将上述代码改为如下内容:

<style>
  .box {
    width: 200px;
    height: 100px;
    padding: 20px;
    box-sizing: border-box;
  }
</style>
<div class="box">
  盒子模型
</div>

则盒子所占据的高为100px。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值