|
做前端的话,float还是挺常用~ 但是各版本对float的兼容问题可是层出不穷啊
这次遇到个类似的控件,一个父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伤不起啊~ |
|