You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何仅修改.green的CSS使其显示在z-index最大值的.blue之上?

仅修改.green CSS,让它盖过z-index拉满的.blue元素

直接上可行方案,给.green添加3D变换属性即可:

修改后的.green样式:

.green {
  background: green;
  position: relative;
  z-index: 999;
  transform: translateZ(1px);
}

原理说明

  • 你之前试的transform: scale(1)属于2D变换,它确实会创建堆叠上下文,但不会改变元素在Z轴的空间位置,所以没法突破平面堆叠的限制,干不过z-index拉满的.blue。
  • 而translateZ(1px)是3D变换,它不仅会生成新的堆叠上下文,还会把元素在Z轴上往前推一层,这个层级优先级要高于仅靠z-index排序的平面元素。哪怕.blue的z-index是最大值2147483647,也挡不住它。

你也可以用transform: translate3d(0, 0, 1px)替代,效果完全一致。

内容的提问来源于stack exchange,提问作者5tormTrooper

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 00:13:03