请{position:absolute;}总是将我的元素放在第一个父元素上?

时间:2014-02-24 17:53:25

标签: html css position

我的网页上有很多div元素

<div class="first">
    <div class="second">
        <div class="third">
            <div class="important_div"></div>
        </div>
    </div>
</div>

我想针对.first定位“.important_div”。为了做到这一点,我使用position: absolute;属性:

.important_div {
    position: absolute;
    bottom: 0px;
}

现在我的问题是:

1)当我使用绝对定位时,它将.important_div定位于.third.important_div的父亲)。我想把它放在.first div(.important_div的曾祖父)身上。我该怎么办?

2) {position:absolute} 是否总是将我的元素放在其父元素上?

3)是否有另一种方法可以将.important_div置于.first div的底部,可能使用绝对值或类似值?

2 个答案:

答案 0 :(得分:7)

它与第一个最近的定位祖先有关。因此,如果.third有定位,它将相对于该元素定位。同样,如果.second具有定位(但不是.third),则相对于该定位。如果没有元素有定位,则它相对于文档容器。

这是一个例子的小提琴:http://jsfiddle.net/mnKpu/1/

答案 1 :(得分:1)

应用:

position: relative;

到你的.first div。如果您希望将position: relative; div相对于.third div进行定位,请不要将.important应用于.first div。

SEE THE DEMO 此处: