与具有较低z-index的元素交互

时间:2018-01-02 16:19:46

标签: html css html5 css3

我的侧边栏有问题。



html, body {
  height: 100%;
  margin: 0;
}
.sidebar{
  display: inline-block;
  height: 100%;
  width: 100px;
  box-shadow: 3px 0px 100px 0px rgba(0, 0, 0, 0.16);
  background-color: #fff;
}
.content {
  position: absolute;
  top: 0;
  padding-left: 100px;
  width: 100%;
  height: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #EEF2F8;
  z-index: -1
}
.section {
  display: block;
  height: 100px;
  background-color: #fff;
}

<div class="sidebar">

</div>

<div class="content">
  <div class="section">
    <a href="#">You can't interact with me :(</a>
  </div>
</div>
&#13;
&#13;
&#13;

我需要与内容互动但是当我在.content上放置更高的z-index时,阴影将不再显示。 所以我可以将背景与.content分开,但我想添加不同背景的部分,他们也不会有阴影。

我还认为侧边栏不会覆盖整个屏幕,但您仍然无法与右侧进行互动。

1 个答案:

答案 0 :(得分:2)

问题是在您的内容上将z-index设置为-1。而不是在背景中的元素上设置负值,而是在应该在前面的元素上设置更高的值。如果您将位置设置为相对位置,则可以向边栏添加z-index值并获取您要查找的行为。

&#13;
&#13;
html, body {
  height: 100%;
  margin: 0;
}
.sidebar{
  position: relative;
  z-index: 1;
  display: inline-block;
  height: 100%;
  width: 100px;
  box-shadow: 3px 0px 100px 0px rgba(0, 0, 0, 0.16);
  background-color: #fff;
}
.content {
  position: absolute;
  top: 0;
  padding-left: 100px;
  width: 100%;
  height: 100%;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: #EEF2F8;
}
.section {
  display: block;
  height: 100px;
  background-color: #fff;
}
&#13;
<div class="sidebar">

</div>

<div class="content">
  <div class="section">
    <a href="#">You can interact with me :)</a>
  </div>
</div>
&#13;
&#13;
&#13;