为了账号安全,请及时绑定邮箱和手机立即绑定

用overflow:hidden清楚浮动的时候,为什么要加宽度?

用overflow:hidden清楚浮动的时候,为什么要加宽度?

如果是用于清除浮动对于父级的影响的时候,我试了一下,对父级加overflow:hidden就好了,不加宽度也是可以实现效果的,为什么?

正在回答

2 回答

你不加宽度的话,其他地方也没设置宽度的话,那么它的宽度就是auto也就是100%。

我猜你指的是mainbody,这里mainbody它还有一个父级wrap呢,mainbody的宽度继承了wrap的宽度。

当然你把wrap的宽度也去掉的话,整个的宽度就是屏幕(网页视图)宽度了。


所以为什么要加宽度呢?

    你让mainbody维持原样不动,不给它清除浮动,left和right都设置float: left ,然后给footer清除浮动,首先是

#footer {
    background:#639;
    width:100%;
    clear: both;
}

    你会看到蓝色背景的wrap,当然黄色的mainbody受到浮动影响这里不显示了

    现在!我们把footer的宽度去掉,clear也去掉,只要overflow

#footer {
    background:#639;
    overflow:hidden;
}

好的,你会发现footer没有另起一行。

因为footer这时候没有了我们设置的宽度属性,它的宽度现在是auto的,这时候你设置隐藏溢出,浏览器可以计算它的高度,不会触发溢出检查,因为它的宽度是auto呀,挤进去并不会溢出。

那设置成10%的宽度呢?还是挤得下,还是没有触发溢出。所以,这时候你需要一个100%的宽度。

2 回复 有任何疑惑可以回复我~
#1

甜酥泡沫 提问者 回复 黑色旋风

所以我就觉得他说的有问题,应该说明加宽度只是针对紧邻被影响的元素,而不是父级元素
2016-06-19 回复 有任何疑惑可以回复我~

overflow 的原意是“溢出“,如果不加不能准确定位,相当于”ctrl+A“即全选

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
网页布局基础
  • 参与学习       214707    人
  • 解答问题       1756    个

让你精通CSS中三大定位机制,彻底掌握网页布局的相关知识

进入课程

用overflow:hidden清楚浮动的时候,为什么要加宽度?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信