惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The GitHub Blog
The GitHub Blog
IT之家
IT之家
B
Blog RSS Feed
罗磊的独立博客
GbyAI
GbyAI
博客园 - Franky
Y
Y Combinator Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Google DeepMind News
Google DeepMind News
博客园 - 聂微东
N
Netflix TechBlog - Medium
博客园 - 三生石上(FineUI控件)
人人都是产品经理
人人都是产品经理
U
Unit 42
博客园 - 叶小钗
Jina AI
Jina AI
MyScale Blog
MyScale Blog
雷峰网
雷峰网
B
Blog
Hugging Face - Blog
Hugging Face - Blog
Blog — PlanetScale
Blog — PlanetScale
Recent Announcements
Recent Announcements
腾讯CDC
酷 壳 – CoolShell
酷 壳 – CoolShell

博客园 - smil、梵音

css渐变边框的实现 C primer Plus 第六版第4章节复习题5记录 C语言第4章末尾程序找错记录 C语言标准(C89/C90)中的32个关键字全列表 Windows 系统的 vscode 通过 Remote-SSH 连接虚拟机的 Ubuntu 系统运行 C 语言的代码 Windows 系统 vscode Remote-SSH 远程连接虚拟机里面的Ubuntu系统的失败处理 Ubuntu虚拟机里安装了SSH,开启SSH服务的时候报错 VS Code的Remote - SSH功能 Ubuntu系统里面安装 g++ ,sudo apt update 的含义 C语言是不是必须得通过gcc编译成可执行的程序? c语言用gcc编译过后,执行 ./hello.c 报错 ./hello.c: 权限不够 windows系统的虚拟机里面的Ubuntu系统安装VMware Tools Ubuntu的应用中心搜索 vscode 的时候,筛选条件为Snap包、debian包是什么意思,如何安装vscode Ubuntu系统是否就是Linux系统,安装软件和Windows系统有何区别 Ubuntu系统里面vscode运行C语言的第一个 Hello World 程序 vscode 中安装C/C++相关的插件 Ubuntu 安装一个轻量级的中文输入法Fcitx5 Ubuntu安装百度网盘 Ubuntu系统里面安装vscode 乌版图系统截屏快捷键 Ubuntu 系统里面运行C++ TortoiseGit 的安装与汉化 安装虚拟机+ ubuntu24.04 系统 联想小新安装 ubuntu24.04 双系统 | 安装乌版图系统 | windows安装 ubuntu24.04 双系统 利用faststone capture制作gif动图 Sublime Text 常用编辑快捷键速查表 vscode 中的 css 样式代码不显示折叠图标的解决方法 IDEA中git的Cherry-Pick的可视化使用(个人总结) IDEA中git的Cherry-Pick的使用 IDEA中如何实现git的cherry-pick可视化操作?
css 的z-index的层级问题 由webai项目的 AI工作台 项目有感记录
smil、梵音 · 2026-08-04 · via 博客园 - smil、梵音

项目中碰到的关于css层级覆盖的问题,现记录一下。

网页的布局,如下:

图片

 外侧是父元素的div,左侧有个侧边栏的子元素 div.child1 ,右侧是展示内容的子元素 div.child2 。

如果两个子元素的 div 都是相对定位,而且左侧边栏的 div.child1 的 z-index 的值为200,右侧展示内容的子元素 div.child2 的 z-index 的值为100 。

如果左侧 div.child1 里面有个类名为 btn 的按钮的css设置的有定位属性,且 z-index 的值为 100。

那么右侧 div.child2 里面的子元素,或者孙子元素等等,如果有弹框,需要覆盖整个页面的时候,是覆盖不了左侧div里面的 btn 按钮的,即使弹框的 z-inex 的值设置为999,高于左侧btn按钮的 z-index 的100的值,也覆盖不了。

因为起决定因素的是左侧 div.child1 的层级高于右侧 div.child2 的层级,所以不管右侧 div.child2 中下面的子元素等设置多高的 z-index 值,都覆盖不了左侧 div.child1 中的带有 z-index 的元素。

项目中碰到的这样的问题,解决方法就是 div.child2 中的弹框显示的时候,发送一个事件出来,左侧的 div.child1 接收事件,隐藏 btn 按钮。