急急急,请问css的定位问题?
<style>
body{
text-align:center;
}
.a{
position:relative;
border:1px solid red;
width:400px;height:300px;
margin:0px auto;
}
.b{
border:1px solid green;width:100px;
position:absolute;left:100px;top:0px;
}
</style>
<div class="a">
<div class="b">sss</div>
</div>
我把(类b)设置成了绝对定位,left为100px,脱离父div了,为什么当我给父div设置了position:relative相对定位后,这个(类B)的absolute就失效了,怎么回事啊?
第二个问题:1.如果将类a改成position:absolute的话,那么类b为什么也在父div里也没有脱离父div,为什么?2.当将类a设置成position:absolute后,火狐浏览器居中为什么失效?3.当将类a设置成position:absolute后,火狐浏览器会靠左,而ie会靠向右边,又是为什么?最后一个问题:ul和li是不是都是块级元素?

解决方案 »

  1.   

    问题一:
    设置了position为absolute的层,将会相对于离它最近的一个position非static的父层移动,若无符合标准的父层,则相对于浏览器窗口移动。
    父div设置了position:relative相对定位后,子div的position:absolute定位变成相对于父div的绝对定位。
    问题二:
    1.基本同上
    2.不清楚
    3.不清楚
    问题三:
    都是块元素
      

  2.   


    给父div设置了position:relative相对定位后, 子div会以父div为基准点进行重定位,left100px,是以父div的起点开始的。
    ul与li同为块级元素