盒模型之content-box和border-box的区别

总结一下content-box和border-box的区别,因为今天碰到这个问题给搞蒙了,看了很多帖子说content-box不包含padding和border;自己写了个盒子测试了一下

   .box {
      width: 200px;
      height: 200px;
      padding: 10px;
      margin: 20px;
      border: 5px solid red;
      background-color: cadetblue;
      /* content-box
      宽:200  高:200  padding:10  border:5px  合计大小230 */
      /* box-sizing: content-box; */
      box-sizing: border-box;
      /* border-box
      宽:170  高:170  padding:10  border:5px  合计大小200  */
    }

border-box 的效果图200px

在这里插入图片描述

content-box 效果图230px

在这里插入图片描述

做了测试更蒙了,这content-box最后大小不就是230px,不是包含了padding和border吗?最后又看了一些相关的博客,终于明白了!我理解的包含是把宽高计算在总大小内,而真正的理解是:“windt”,“width”,“width”,是你自己写的width在计算总盒子大小的时候不把padding和border计算在内winth内,就是要另外在加上padding和border;理解上出现了偏差。

content-box计算公式:winth=width+padding+border

CSS3中的box-sizing 属性允许以特定的方式来指定盒模型,有两种方式:

content-box:标准盒模型,又叫做 W3C盒模型,一般在现代浏览器中使用的都是这个盒模型

border-box:怪异盒模型,低版本IE浏览器中的盒模型

语法格式

box-sizing:content-box | border-box

区别

content-box:padding和border不被包含在定义的width和height之内。

盒子的实际宽度=设置的width+padding+border

border-box:padding和border被包含在定义的width和height之内。

盒子的实际宽度=设置的width(padding和border不会影响实际宽度,有效果,但不计算大小)

总结

我们在理解的时候就要记住content-box是正常盒模型,border-box是怪异盒模型;
content-box正常的盒子模型:width+padding+border,盒子内所有属性相加得到最终盒子大小;
border-box怪异盒模型,就是你写个width:200px;后面无论padding和border你写多少,最终盒子宽度就200px,不会变大,不会加上padding和border的大小;也就是width包含了padding和border。

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
content-boxborder-box是两种不同的盒模型,它们在计算元素尺寸和定位时有所不同。 content-box是默认的盒模型,它将元素的尺寸计算为内容区的宽度和高度。也就是说,元素的宽度和高度只包括内容,不包括padding、border和margin。这意味着元素的实际大小是由内容的尺寸决定的。 border-box是另一种常用的盒模型,它将元素的尺寸计算为内容区加上padding、border的宽度。也就是说,元素的宽度和高度包括了内容、padding和border,但不包括margin。这意味着元素的实际大小是由内容、padding和border的尺寸决定的。 这两种盒模型的主要区别在于它们计算元素尺寸时的方式不同。在content-box模型中,如果给一个元素设置了宽度和高度,那么实际渲染的尺寸会比设置的尺寸要大,因为元素的尺寸还要包括padding、border的宽度。而在border-box模型中,如果给一个元素设置了宽度和高度,那么实际渲染的尺寸会和设置的尺寸一致,因为元素的尺寸已经包括了padding、border的宽度。 选择使用哪种盒模型取决于具体的布局需求。通常情况下,如果我们希望元素的尺寸更加可预测,并且希望能够方便地计算出元素所占空间,那么可以选择使用border-box模型。而如果我们希望元素的尺寸仅包括内容,而不考虑padding和border的影响,那么可以选择使用content-box模型。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值