是否可以将z-index设置为仅适用于某个“范围”,例如仅影响某个元素的子级。

我有一个带有z-index 0的containerDiv。它包含一堆圆圈,应该以各种深度放置在彼此的顶部,但是我不希望它们影响页面上的任何其他元素。

我在页面上还有很多其他元素(弹出窗口,下拉菜单等),它们的z-index为1,我希望将它们放置在containerDiv及其所有子元素的顶部。
由于我很懒惰,我最好避免不得不基于具有最高z-index的圆调整这些元素的z-index值...
如果所有其他元素都可以某种方式将containerDiv及其所有子级视为具有相同的z-index,那将非常棒。

CSS可以实现吗?

最佳答案

答案取决于您的其他元素是否是containerDiv的后代。要回答这个问题:是的,鉴于标记的改组,几乎可以肯定。

但是您需要了解的是堆栈上下文的概念:

http://www.w3.org/TR/CSS2/visuren.html#layers

堆栈上下文不像其他属性那样继承:“从其父堆栈上下文的角度来看,堆栈上下文是原子的;其他堆栈上下文中的框可能不在其任何框之间。”并非z-index:2页面上的每个元素都将位于z-index:4页面上的所有元素之后。当两个元素共享一个包含元素时,Z索引(结合位置声明)通常(尽管不是排他性地)用于解析堆叠顺序。

关于css - 可以设置仅影响某个div子元素的z-index规则?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11230347/

10-09 18:19
查看更多