温馨提示×

为什么overlay无效

小樊
46
2026-09-28 00:44:35
栏目: 编程语言

“Overlay 无效”这个问题比较宽泛,因为 overlay 在不同技术场景下含义完全不同。下面我按常见场景给你总结一下最常见原因,你可以对照看看是哪一种。


一、前端 CSS position: overlay / absolute / fixed 无效

(比如遮罩层、弹窗 overlay 不显示或不覆盖)

常见原因

  1. 父元素没有 position: relative
    .parent { position: relative; }
    .overlay { position: absolute; }
    
  2. z-index 被其他元素盖住
    • overlay 的 z-index 太小
    • 其他元素创建了更高的层叠上下文
  3. overlay 尺寸为 0
    .overlay {
      width: 100%;
      height: 100%;
    }
    
  4. display / opacity / visibility 问题
    • display: none
    • opacity: 0
    • visibility: hidden
  5. 被 transform 或 overflow: hidden 限制
    • 父元素有 overflow: hidden
    • 父元素 transform 会影响定位

二、Docker / Kubernetes Overlay 网络无效

(容器之间无法通信)

常见原因

  1. 防火墙阻止
    • 4789/UDP(VXLAN)
    • 8472/UDP(Flannel)
  2. 网卡不支持 / 被禁用
    ip link show
    
  3. 子网冲突
    • 容器网段和宿主机网段冲突
  4. CNI 插件未正确安装
    • Flannel / Calico 没起来
  5. IPv4 转发未开启
    sysctl net.ipv4.ip_forward
    

三、Linux OverlayFS 挂载无效

(overlay mount 不生效)

常见原因

  1. 内核不支持 overlay
    cat /proc/filesystems | grep overlay
    
  2. 目录权限不对
    • lower / upper / work 目录权限不足
  3. mount 参数错误
    mount -t overlay overlay \
      -o lowerdir=/l,upperdir=/u,workdir=/w /mnt
    
  4. workdir 和 upperdir 在同一文件系统
  5. 已挂载但未刷新视图
    • 缓存问题

四、游戏 / 图形 / UI Overlay 无效

(如 Steam / Discord / OBS overlay)

常见原因

  1. 游戏以管理员运行,overlay 没有
  2. 游戏是独占全屏
    • 改为窗口化 / 无边框
  3. 驱动或注入被拦截
  4. Overlay 功能未开启

五、你可以这样告诉我,我能精准帮你

请补充:

  1. 你用的是哪种 overlay?
    • CSS / Docker / Kubernetes / OverlayFS / 游戏
  2. 具体现象
    • 不显示?不覆盖?不通信?报错?
  3. 相关代码或命令

我可以直接帮你定位并给修复方案。

0 踩