CSS 子div设置float之后父div无法自适应高度问题

1、向父容器的末尾再插入一个额外的标签,并令其清除浮动(clear)以撑大父容器。这种方法浏览器兼容性好,没有什么问题,缺点就是需 要额外的(而且通常是无语义的)标签。这种方法是W3C推荐的方法

div style="clear:both;"></div>


其他方法 见:

http://www.cnblogs.com/smarterplanet/archive/2011/10/28/2228171.html


2、以上清除浮动的方法有一个弊端

例:

解决方法:

这个BUG是由于清除浮动的DIV给撑大的,在IE6/7默认情况下,DIV都有一个默认的高度,所以要设置此DIV 的overflow:hidden; height:0就会解决。其实,清除浮动的方法这并不是最好的方法,因为它产生了冗余标签。我觉得让其父级元素来清除浮动更合适,给其父元素添加:
{overflow:auto; zoom:1;}//IE
#div :after {display:block; visibility:hidden;clear:both;height:0; content:"/20";} //after伪元素在IE下无效果,所以不影响IE的兼容代码。或许这也不是最优的方法,但现在这是网上流传的比较多。

转载于:https://my.oschina.net/u/1029355/blog/123713

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值