Html 为什么z索引不使用固定元素和子元素

Html 为什么z索引不使用固定元素和子元素,html,css,Html,Css,我试图将我的子元素发送到堆栈层的底部,但在输出中,它位于顶部,而不是加载代码 这是我的密码 .loadermask { position:absolute; z-index: 900; left: 0px; top: 0px; width: 100%; height: 100%; background:rgba(0,0,0,0.4); } .se-pre-con { position: fixed; left: 0p

我试图将我的子元素发送到堆栈层的底部,但在输出中,它位于顶部,而不是加载代码

这是我的密码

.loadermask { 
    position:absolute; 
    z-index: 900;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background:rgba(0,0,0,0.4);
}

.se-pre-con {
    position: fixed;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background:url(https://transfast.com/Projects/Transfast.UI/img/loadingimg.gif) center no-repeat;
}
将您的HTML更改为:

<div class="se-pre-con">
</div>
<div class="loadermask">
</div>

loadermak
se pre-con
的子对象时,其z索引不是相对于整个DOM,而是相对于父对象中的相邻子对象


换句话说,子对象的z索引只是其在父对象中的z索引,它不能高于或低于父对象,因为它位于父对象内部。

如果您试图使灰色背景位于加载图像后面,则不一定需要2个div。您可以将其合并到一个背景中-

.se pre-con{
位置:固定;
左:0px;
顶部:0px;
宽度:100%;
身高:100%;
z指数:9999;
背景:url(https://transfast.com/Projects/Transfast.UI/img/loadingimg.gif)中锋不重复
rgba(0,0,0,0.4);
}

您必须更具体一点,并在此处显示您的HTML。子对象不能显示在定位的父对象下方。你可能想读一读关于这个问题的书。(查看示例,并观察中支持的DIV#3),然后您需要寻找不使用
z-index
的替代解决方案。虽然我不知道为什么人们会“需要”这种格式的div。