0

作为一个任意的例子,如果我有两个divs 之间有一个图像,那么,

<div class="section1">
        <h2>Stuff in section one</h2>
</div>
<img src="../img/logo.png" class='myimg'>
<div class="section1">
        <h2>Stuff in section two</h2>
</div>

<div class="section2">
    <div class="container"> 
        <h2 style="color:white">Stuff in section one</h2>
    </div>
</div>

假设我想将该图像显示为一个块,并将其向上调整 20 个像素。

.myimg{
    position: relative;
    display: block;
    margin-top: 0px;
    margin-bottom: 0px;
    bottom: 20px;
    margin-right: auto;
    margin-left: auto;
}

工作正常,但现在section2div 从图像应该在的位置开始——比实际位置低 20px。

有没有办法让下一个元素(section2在这种情况下)“意识到”之前出现的相对定位的元素,以便它从该元素实际结束的地方开始?

4

1 回答 1

2

改为使用负上边距:

http://cssdeck.com/labs/n3tbf9ro

.myimg{
    display: block;
    margin-top: -20px;
    margin-bottom: 0px;
    margin-right: auto;
    margin-left: auto;
}

或者去掉前一个元素的下边距:

http://cssdeck.com/labs/lsnlxk8i

.section1 :last-child {
  margin-bottom: 0;
}
于 2013-07-05T01:00:59.867 回答