所以如果我正确理解z-index,它在这种情况下是完美的:
我想把底部图像(标签/卡片)下面的div上面。所以你看不到锋利的边缘。我怎么做呢?
z-index:-1 // on the image tag/card
or
z-index:100 // on the div above
也不管用。像这样的组合也不行。如何来吗?
所以如果我正确理解z-index,它在这种情况下是完美的:
我想把底部图像(标签/卡片)下面的div上面。所以你看不到锋利的边缘。我怎么做呢?
z-index:-1 // on the image tag/card
or
z-index:100 // on the div above
也不管用。像这样的组合也不行。如何来吗?
当前回答
你的元素需要有一个position属性。(例如绝对指数、相对指数、固定指数)或z指数都不起作用。
其他回答
确保您想要使用z-index控制的元素没有具有z-index属性的父元素,因为元素由于其父元素的z-index级别而处于较低的堆叠上下环境中。
这里有一个例子:
<section class="content">
<div class="modal"></div>
</section>
<div class="side-tab"></div>
// CSS //
.content {
position: relative;
z-index: 1;
}
.modal {
position: fixed;
z-index: 100;
}
.side-tab {
position: fixed;
z-index: 5;
}
在上面的例子中,模态的z指数比内容高,尽管内容会出现在模态的顶部,因为“content”是具有z-index属性的父元素。
这里有一篇文章解释了z-index可能不起作用的4个原因: https://coder-coder.com/z-index-isnt-working/
在我的例子中,我有我的导航栏的不透明度为0.9,我从codercoder.com得到了我的答案,因为我从我的导航栏的css中删除了不透明度属性,z-index工作
如果所有这些都失败了,请在HTML中查找语法错误。这不是直观的,但我看到它是z指数不起作用的原因。
下面的代码有无效的HTML语法:
<div class="over"/>
<div class="under"/>
...(这是无效的语法,因为div不是一个自关闭标签)。
应用于这些流氓HTML元素的CSS属性,如background-color: black、position: fixed、width: 150px和top:150px,都能正常工作。然而,z-index: 2属性在完全相同的条件下并不适用。
只有当无效的HTML被修复时,z-index才能正常工作。
我不确定为什么z-index比其他CSS属性更挑剔,但也许这个答案可以帮助到一些人。
z指数需要这些来工作:
位置:相对,绝对,固定,.. 确保父元素没有溢出:hidden;
只要给出其他静态的位置。你应该给两个容器一个位置,这样就可以了。