float布局div问题解决方法

这次遇到个类似的控件,一个父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;