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

DIV元素设置position:sticky后子元素hover事件不生效问题求助

问题根因

Footer子元素hover失效的核心原因是.footer类设置了z-index: -1,该属性会让页脚元素层级低于页面普通流内的默认元素,上层的.works、.contact-pager等元素会直接覆盖在页脚上方,拦截所有鼠标交互事件,因此hover效果完全无法触发。你之前尝试的@media(hover:hover)和GSAP方案未触及层级问题,所以无法生效。

解决方案
  • 调整z-index层级
    将.footer的z-index: -1改为大于等于0的数值即可恢复交互。如果你需要实现滚动时其他内容盖在页脚上方的视差效果,可以给需要覆盖在页脚上方的元素单独设置更高的层级,同时给上层元素添加背景色避免透明透出页脚:
/* 修改后的footer样式 */
.footer {
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1; /* 把原有-1修改为≥0的数值 */
  width: 100vw;
  height: 100vh;
  position: sticky;
  top: 0;
}
/* 若需要其他内容覆盖在footer上方,给对应元素添加如下样式 */
.works, .contact-pager {
  position: relative;
  z-index: 2;
  background: #ffffff; /* 必须加背景色,否则会透明透出下层footer */
}
  • 额外排查项
    如果修改z-index后仍有问题,检查.footer或其父元素是否设置了pointer-events: none,该属性会直接禁用所有鼠标事件,若存在则删除该属性,同时可以给.s-i主动添加交互权限配置:
.s-i {
  pointer-events: auto;
}

内容的提问来源于stack exchange,提问作者N SARATH CHAND

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 19:36:02