<div class="box01">
        <div class="box02"></div>
</div>
.box01{position:relative; padding: 100px; background: red;}
.box02{position: absolute; width: 30px; height: 30px; background: blue; top:0; left: 0;}

标准浏览器的效果:

ie6浏览器:

很明显,子元素的left值从父元素的padding-left开始计算。

一般遇到这种奇怪的现象,我都会尝试去让元素hasLayout,子元素已经hasLayout了,选择触发父元素的hasLayout.

1、设置父元素的width:100px;

ie6下效果:left问题解决。

2、设置父元素zoom:1;

ie6效果:

3、设置父元素float:left;

 

奇怪的现象往往可以通过触发hasLayout解决。

 

 

posted on 2013-11-18 10:07  群er  阅读(97)  评论(0)    收藏  举报