百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>CSS教程> CSS属性box-sizing详解
分享文章到:

CSS属性box-sizing详解

发布时间:09/01 来源:未知 浏览: 关键词:
CSS盒模型

你需要先理解CSS盒模型

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

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

下面举例说明

不加 padding 与 border 的时候

<body>
  <div class="wrapper"></div>
</body>
*{
      margin:0;
      padding:0;
    }
    body{
      border:1px solid blue;
      margin:10px;
    }
    .wrapper{
      width:100px;
      height:100px;
      background:pink;
    }

微信截图_20200509092955.png

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

微信截图_20200509093007.png

wrapper元素的盒模型

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

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

微信截图_20200509093020.png

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

微信截图_20200509093033.png

注: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

<body>
  <div class="wrapper"></div>
</body>
    *{
      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;
    }

微信截图_20200509093047.png

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

微信截图_20200509093100.png

使用content-box

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

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

微信截图_20200509093111.png

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

微信截图_20200509093122.png

引荐教程:《CSS教程》

以上就是CSS属性box-sizing详解的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有150人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板