一个挺常用的float布局div问题解决方法

(编辑:jimmy 日期: 2024/11/1 浏览:2)

这次遇到个类似的控件,一个父div带边框,里面就是一个一个float的子div,需要换行的时候加了一个

float:left;

height:0px;

width:100%;

overflow:hidden;

font:0pt;/* 蛋疼的IE6你懂的*/

的伪"换行符"div

后面还加了个clear:both;的div来清除浮.

问题来了,在IE8/IE9/chrome里面,怎么捣鼓,都没出什么问题~

这个时候在ff里面也是正常的.然后发现在ie6里面父div的边框没了, ie7里面,第一个"换行符"前面的div跑到父div的外面去了,认了老子做弟弟怎么行啊~

经过测试啊~把伪换行符的float:left;去掉后,IE6/7都立马好了,回来ff一看,尼玛那伪"换行符"(带border-top),活生生一条线没换行直接右边插出去了~

受过float这么的人,第一反应就是clear:both加上去一看,ff又恢复正常了,再回来IE6/7一看,我艹~打回原形啊~后来木有办法,服了呗~只能hack了,最终版本伪"换行符"成这个样子了:

复制代码代码如下:
  width: 100%;
height:0px;
border-top: 1px solid #eee;
font-size:0px;
overflow:hidden;
clear:both;
_clear:none;/* 服了尼玛IE6*/

爱用flaot布局div,真TM伤不起啊~