浏览器兼容之旅第三站:IE常见Bug总结及修复方法—part1( 五 )


更新一:
在上面的基础上追加一个典型的IE6 bug: IE6中绝对定位、浮动元素混用时的BUG 。一个内容区块,其中包含两个浮动的box,外加一个绝对定位的box,设置如下样式时会发生IE6浮动元素消失的BUG 。
HTML Code

复制代码代码如下:
div class="content"
div class="abs" abs/div
div class="main" main/div
div class="sub" sub/div
/div

CSS Code

复制代码代码如下:
*{ padding:0; margin:0;}
.content{width:600px;}
.abs{position:absolute; left:0; top:0; width:600px; height:120px; background:#1f3a87; }
.main{float:left; width:300px; height:200px; background:#f3f3f3; }
.sub{float:left;width:300px; height:200px; background:#bc2931;}

以上代码在IE6下浏览会发现,绝对定位元素不见了 。

解决方法:
给content加一个display:inline样式可解决 。
各元素的宽度mainsub2content 。给sub加一个margin-right:-3px样式让main和sub不要撑满content可解决 。
在main元素之前加一个空的div/div,如div/divdiv class=main
给abs元素再嵌套一个div元素,如divdiv class=abs abs/div/div

推荐阅读