IE6下与float元素相邻的position:absolute元素消失BUG
2009-06-10 15:56:10
<style>
#z{position:relative;width:400px;height:300px;border:1px solid #000;}
#a{position:absolute;top:5px;left:5px;background:red;}
#b{float:left;width:300px;background:yellow;}
#c{float:left;width:100px;background:blue;}
</style>
<div id="z">
<div id="a">AAA</div>
<div id="b">BBB</div>
<div id="c">CCC</div>
</div>
症状:IE6下div#a消失
解决办法:
1)插入空白元素
<div id="z"> <div id="a">AAA</div> <!--[if IE 6]><div></div><![endif]--> <div id="b">BBB</div> <div id="c">CCC</div> </div>
2)修改浮动元素样式
#c{float:left;width:100px;_margin-rigth:-3px;background:blue;}
3)如果div#c浮动修改成
#c{float:right;}
则
#b{_margin-right:-3px;}
#c{_margin-left:-3px;}
即可解决。