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

CSS如何实现鼠标悬停时一张图片覆盖另一张图片的效果

CSS实现重叠图片悬停置顶效果方案

实现核心逻辑

通过z-index属性控制定位元素的堆叠层级,鼠标悬停时提升当前图片的层级值,使其覆盖其余重叠元素。

基础HTML结构

<!-- 父容器用来约束图片位置 -->
<div class="image-wrapper">
  <img src="图片1地址" alt="图1" class="overlap-img">
  <img src="图片2地址" alt="图2" class="overlap-img">
</div>

完整CSS代码

/* 父容器基础样式 */
.image-wrapper {
  position: relative; /* 开启相对定位作为内部元素定位基准 */
  width: 400px; /* 可自定义,和图片宽度匹配即可 */
  height: 300px; /* 可自定义,和图片高度匹配即可 */
  overflow: hidden;
}

/* 重叠图片通用样式 */
.overlap-img {
  position: absolute; /* 开启绝对定位实现重叠 */
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1; /* 初始统一层级 */
  transition: z-index 0.1s; /* 可选,加过渡避免层级切换太生硬 */
}

/* 悬停时提升当前图片层级 */
.overlap-img:hover {
  z-index: 9; /* 只要大于初始层级值即可生效 */
}

注意事项

  • z-index仅对position属性值不为static的元素生效,必须给图片设置非static的定位属性才能控制层级
  • 如果页面内有其他堆叠上下文,需要调整悬停时的z-index值保证足够大,不会被父级外的元素遮挡
  • 两张以上的重叠图片也可以用同样的逻辑实现,不需要额外修改规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 07:54:07