CSS属性box-sizing详解

作者 : OO资源中心 发布时间: 2020-05-10 文章热度:365 共1287个字,阅读需4分钟。 本文内容有更新 字体:

CSS盒模型

你需要先了解CSS盒模型

CSS盒模型中 width 与 height 的计算规则:

在CSS中,你设置一个元素的width与height只会应用到这个元素的内容区。如果这个元素有任何的 border 或 padding,绘制到屏幕上时的盒子宽度和高度会加上设置的边框(border)和内边距(padding)值。

下面举例说明

不加 padding 与 border 的时候

 

*{
      margin:0;
      padding:0;
    }
    body{
      border:1px solid blue;
      margin:10px;
    }
    .wrapper{
      width:100px;
      height:100px;
      background:pink;
    }

CSS属性box-sizing详解-OO.INK资源网

此时 div.wrapper 元素的宽高是 100*100

CSS属性box-sizing详解-OO.INK资源网

wrapper元素的盒模型

当给 div.wrapper 元素加上 padding 和 border 样式时

.wrapper{
      width:100px;
      height:100px;
      background:pink;
      padding:10px;
      border:1px solid black;
      margin:10px;
    }

CSS属性box-sizing详解-OO.INK资源网

此时 div.wrapper 元素的宽高是 122*122 ,因为给该元素加上了10像素的 padding 和1像素的 border,可以看到此时粉色区域要更大了

CSS属性box-sizing详解-OO.INK资源网

注:margin不会影响元素的宽高,虽然这里也设置了margin,但元素的宽高并未加上margin的值

box-sizing属性

1. box-sizing 属性是干什么用的?

box-sizing 属性是用来更改 CSS盒模型 中的这种 计算元素宽高 的一种方法

2. box-sizing 的取值

content-box

是默认值。如果你设置一个元素的宽为100px,那么这个元素的内容区会有100px宽,并且任何边框和内边距的宽度都会被增加到最后绘制出来的元素宽度中。

border-box

如果你将一个元素的 width 设为100px,那么这100px会包含它的 border 和 padding,内容区的实际宽度会是 width 减去 border + padding 的计算值。

3. 使用 box-sizing 属性

使用 border-box

 

    *{
      margin:0;
      padding:0;
      box-sizing:border-box;
    }
    body{
      border:1px solid blue;
      margin:10px;
    }
    .wrapper{
      width:100px;
      height:100px;
      background:pink;
      margin:10px;
      padding:10px;
      border:1px solid black;
    }

CSS属性box-sizing详解-OO.INK资源网

此时 div.wrapper 元素的宽高还是 100*100,但实际内容区的宽高变成 78*78,元素的宽高包括实际内容的宽高加上 border 和 padding 的值

CSS属性box-sizing详解-OO.INK资源网

使用content-box

以上个例子为例,仅将 box-sizing 的值改为 content-box

*{
      margin:0;
      padding:0;
      box-sizing:content-box;
    }

CSS属性box-sizing详解-OO.INK资源网

可以看到粉色区域又变大了,此时 div.wrapper 元素的宽高为 122*122 ,内容的宽高还是100*100

CSS属性box-sizing详解-OO.INK资源网

《》

常见问题FAQ

免费下载或者VIP会员专享资源能否直接商用?
本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
下载资源需要解压密码,解压密码是什么?
如下载的资源需要解压密码,请查看下载页右侧查找解压密码;
如没有解压密码请尝试默认解压密码:www.oo.ink 或者 oo.ink
或者联系我们获取解压密码!
1、本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2、分享目的仅供大家学习和交流,请不要用于商业用途!
3、本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
4、如有链接无法下载、失效或广告,请联系管理员处理!
5、本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!

OO.INK资源网 » CSS属性box-sizing详解
+已在风雨中度过
为兴趣而改变,为梦想而努力!
+已坚持更新
时时更新,确保最新~

开通SVIP,畅享全站资源下载~

立即了解