负顶值使父div更高

时间:2016-02-25 14:37:39

标签: css css3

我尝试将div相对于其父级置于负顶值。这很好用,问题是现在这个div,即使它有一个负顶值,也会使父div更大。

如果父div不大,我该怎么办?

Here's a fiddle

我不希望.innera-rel div使.a div更大(我不想看到底部的红色)。

HTML:

<div class="a">
  <div class="innera">
    blah blah blah
  </div>
  <div class="innera-rel">
    test
  </div>
</div>

CSS:

.a {
  background: red;
}
.innera {
  height: 80px;
  background: blue;
}

.innera-rel {
    border: 1px solid gray;
    background: white;
    position: relative;
    z-index: 100;
    right: -50px;
    top: -38px;
    width: 130px;
}

4 个答案:

答案 0 :(得分:3)

您看到的红色空间是.innera-rel在没有定位的情况下占用的空间。这个空间保持&#34;占用&#34;,你只需相对于那个空间移动div。如果您不希望发生这种情况,则必须使用绝对定位。

答案 1 :(得分:0)

给予.a

相同的高度

&#13;
&#13;
.a {
  background: red;
    height: 80px;
}
.innera {
  height: 80px;
  background: blue;
}

.innera-rel {
    border: 1px solid gray;
    background: white;
    position: relative;
    z-index: 100;
    right: -50px;
    top: -38px;
    width: 130px;
}
}
&#13;
<div class="a">
  <div class="innera">
    blah blah blah
  </div>
  <div class="innera-rel">
    test
  </div>
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:0)

.a {
  background: red;
  height:80px;
}
.innera {
  height: 80px;
  background: blue;
}

使.a高度与.innera身高

相同

答案 3 :(得分:-1)

这会使红条消失:

.a {
  display: inline;
}