开发者社区> 问答> 正文

嵌套标签的z-index问题

例如下列代码:

<nav>
<div id="name"></div>
<div id="category"></div>
</nav>
<div id="bg"></div>
其中,设置nav的z-index为700,设置黑色背景#bg的z-index为800

因为响应式设计,在小屏幕上,就会有:
#category {
position:fixed;
top:0;
left:0;
z-index:900
}

希望的效果是#bg会遮挡nav,但#category会浮在#bg之上

实际测试中,发现#category还是会被#bg遮挡

请教一下,有没有方法可以解决?

展开
收起
a123456678 2016-05-26 17:45:03 1898 0
1 条回答
写回答
取消 提交回答
  • 可以考虑换个结构。或者说nav不设置z-index,只是设置position为非static,然后你里边的category设置的z-index比bg的要大就好了。

    上边的你的失效是因为当z-index设置了整数的值的时候,就会创新新的层叠上下文,然后不管他的孩子设置z-index多高,都会受他控制。

        <div style="position: absolute;width: 100px;height: 100px;background: red;">
            <div style="position: fixed;width: 50px;height: 50px;background: blue;z-index: 10;"></div>
        </div>
        <div style="position: absolute;width: 200px;height: 200px;background: rgba(0,0,0,.4);z-index: 5;"></d
    2019-07-17 19:16:41
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载