box-sizing属性疑惑

box-sizing属性疑惑

https://img1.sycdn.imooc.com//climg/6159a31b0953c89608810533.jpghttps://img1.sycdn.imooc.com//climg/6159a32409e119ac06770375.jpg

这里的宽高没有设置百分比,为何不用这个属性盒子就会超出?

正在回答 回答被采纳积分+1

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

2回答
好帮手慕久久 2021-10-06 14:40:05

同学你好,解答如下:

1、box-sizing起到的作用与overflow:hidden不一样。

box-sizing的作用是,改变盒模型的计算方式。设置该属性后,如果元素设置了padding,该padding会包含在设置的width、height内,即元素的实际尺寸就等于设置的width和height,不会因为设置了padding而超出:

https://img1.sycdn.imooc.com//climg/615d42eb09c521e617100679.jpg

而overflow:hidden的作用是“超出隐藏”,即超出width、height的内容,会被隐藏看不到。

2、两个属性意义不一样,因此使用overflow:hidden,可能无法解决问题。例如:当info中内容很多时,使用overflow:hidden可能会出现部分内容看不到的情况:

https://img1.sycdn.imooc.com//climg/615d4391093b316a17420696.jpg

此时还是使用box-sizing比较好。

3、可以不使用这两个属性,直接调整宽高就行。例如

https://img1.sycdn.imooc.com//climg/615d445c09085b2809170533.jpg

https://img1.sycdn.imooc.com//climg/615d447e09dabb3b17390626.jpg

祝学习愉快!​

好帮手慕久久 2021-10-06 11:57:54

同学你好,主要原因在于.info这个元素设置了固定的宽高:

https://img1.sycdn.imooc.com//climg/615d1d78090994dc05760206.jpg

如果不设置box-sizing: border-box属性,则padding样式会导致元素实际的宽高大于设置的width、height,从而尺寸超出:

https://img1.sycdn.imooc.com//climg/615d1e28094a2bf317880740.jpg

因此需要加上box-sizing: border-box属性。

祝学习愉快!

  • 提问者 JarvanIV #1

    那起到的作用是不是跟overflow:hidden一样?

    2021-10-06 13:42:03
  • 提问者 JarvanIV #2

    这个用overflow:hidden是不是也可以解决?

    2021-10-06 13:56:20
  • 提问者 JarvanIV #3

    因为实际设置宽高是跟设计图走的,但是效果看起来不一致,那是否直接调整宽高更好?不用加这些属性

    2021-10-06 14:03:01
问题已解决,确定采纳
还有疑问,暂不采纳

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

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

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

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