box-sizing到底是啥?两个主要属性又是啥意思

box-sizing到底是啥?两个主要属性又是啥意思

  1. 你们的资料里的解释让人更看不懂了

  2. 它两个主要的属性值又是啥意思?资料里的更没看懂

  3. 这个属性有什么用?

      麻烦好好解释。

正在回答

登陆购买课程后可参与讨论,去登陆

3回答

您好,因为文档中详细解释了属性的含义,所以会问您是具体哪里没有理解,好针对性帮助您理解,造成您的误会,抱歉。

根据文档中的代码解释如下:

文档中代码的展示效果应该是:

http://img1.sycdn.imooc.com//climg/5bdc26e00001fc0903160245.jpg

当文档代码中关于box-sizing属性全部注释,可以发现页面中的展示效果为:

http://img1.sycdn.imooc.com//climg/5bdc26b80001823203200287.jpg

第一个div使用的是content-box属性(属性含义:在宽度和高度之外绘制元素的内边距和边框),当注释掉box-sizing属性和不注释时效果是相同。因为是在div原本的宽高200*70之外添加的padding:10px和border:15px。中间部分div的大小并没有发生变化。(可以使用F12键查看控制台中关于div的大小)

http://img1.sycdn.imooc.com//climg/5bdc28090001185f02170191.jpg

第二个div使用的是border-box属性(属性含义:通过从已设定的宽度和高度分别减去边框和内边距才能得到内容的宽度和高度)。当注释掉border-box属性和不注释时效果是不同的,因为是在div原本的宽高基础上减去设置的border,padding完成的。

没有border-box时div的大小:http://img1.sycdn.imooc.com//climg/5bdc299c000173b702080180.jpg

添加border-box时div的大小:http://img1.sycdn.imooc.com//climg/5bdc295e0001f23602430191.jpg

可以发现添加border-box时div的大小加上padding等设置的距离等于最初设置的div宽200高70的大小。(margin-top是为了距离上一个div有一部分距离设置的,请注意此属性是对边框和内边距的操作)

另会根据您的反馈详细补充教辅中的内容。祝学习愉快!

  • 轩辕小齐V 提问者 #1
    您好,您的回答很用心。但我还是没理解,我就百度了下,请您 指点下我的理解对否即可; box-sizing 属性定义了,这个css 内 对于width、height该如何解析; 1.值为content-box,以为宽高只是 内容的宽高,不包含内边距padding 与边框border; 2.值为border-box时,height 与width的值包含padding+border ; 问题: 1.请问助教老师我的理解对么? 2.请问在不同的 浏览器 或者不同的 标签 或者 不同的情况下 应该如何选择box-sizing 属性值? 以下是复制的搜索内容: CSS 3(截止到2016年12月6日该属性还是草案)中新加了box-sizing属性,用来重新规定设置元素的width和height时,到底包含哪些区域。 box-sizing的可取值有两个:content-box(默认值)和border-box。 content-box 默认值。该值表示设置元素的width和height时,这两个尺寸实际指的是内容区的尺寸。即: width = 内容区的宽度 height = 内容区的高度 border-box 该值表示设置元素的width和height时,这两个尺寸实际指的是border + padding + 内容区 这三项的总尺寸。即: width = border-left + padding-left + 内容区宽度 +padding-right + border-right height = border-top + padding-top + 内容区高度 +padding-bottom + border-bottom
    2018-11-02 19:32:01
  • 好帮手慕查理 回复 提问者 轩辕小齐V #2
    您好,理解的正确。另是想问在什么情况下使用哪个元素值吗?一般情况下都是在原有的宽高基础上添加边框等距离。祝学习愉快!
    2018-11-04 10:54:40
提问者 轩辕小齐V 2018-11-06 11:39:36

box-sizing 属性定义了,这个css 内 对于width、height该如何解析; 1.值为content-box,以为宽高只是 内容的宽高,不包含内边距padding 与边框border; 2.值为border-box时,height 与width的值包含padding+border ;

以下是复制的搜索内容: CSS 3(截止到2016年12月6日该属性还是草案)中新加了box-sizing属性,用来重新规定设置元素的width和height时,到底包含哪些区域。 box-sizing的可取值有两个:content-box(默认值)和border-box。 content-box 默认值。该值表示设置元素的width和height时,这两个尺寸实际指的是内容区的尺寸。即:   width = 内容区的宽度   height = 内容区的高度 border-box 该值表示设置元素的width和height时,这两个尺寸实际指的是border + padding + 内容区 这三项的总尺寸。即:   width = border-left + padding-left + 内容区宽度 +padding-right + border-right   height = border-top + padding-top + 内容区高度 +padding-bottom + border-bottom

好帮手慕查理 2018-11-02 11:04:14

您好,资料中详细介绍了box-sizing的含义以及属性值的含义,可以具体描述一下哪里不懂,以便帮助您理解。建议按照教辅的例子实际操作一下,以便帮助理解box-sizing以及属性值的作用。

  • 提问者 轩辕小齐V #1
    您好!我是直接没看懂。还有您的回答非常搞笑,我实际操作后,并不知道有啥不同所以才问你的,能不能具体解释下,这个属性是为了实现什么效果而出现,两个属性值分别又有什么不同可否? 你的回答和没回答有区别的?我截图发个微博,会不会让同行仰天长笑?
    2018-11-02 18:08:40
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
PHP小白零基础入门
  • 参与学习           人
  • 提交作业       626    份
  • 解答问题       4930    个

想要学好Web后端开发的中流砥柱语言,本阶段为你轻松铺就扎实的基础,从前端网页布局的搭建到后台PHP开发,助你从零基础到掌握主流开发语言。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师