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

如何实现鼠标悬停时文字从底部滑入并固定初始文本?

问题解决:实现文本固定初始状态+悬停底部滑入效果

原代码核心问题是定位逻辑错误、动画触发条件不合理,以下是修正后的实现方案:

关键调整点

  • 给.product-box添加position: relative,让内部绝对定位元素以它为参考容器
  • 重构.middle的初始状态:默认隐藏在容器底部,配置过渡动画参数
  • 调整hover触发逻辑,通过父容器hover统一控制文字滑入和图片效果

完整代码

CSS

.container {
  padding: 1em 0;
  float: left;
  width: 50%;
}

.product-box {
  position: relative; /* 核心:作为绝对定位的父参考容器 */
  overflow: hidden;
  margin-top: 20px;
}

.image1 {
  display: block;
  width: 100%;
  height: auto;
  transition: all 0.8s linear; /* 统一图片过渡动画时长 */
}

.middle {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgb(30, 30, 36);
  font-weight: 400;
  font-size: 16px;
  line-height: 22px;
  color: rgb(246, 244, 234);
  margin: 0;
  padding: 10px 0; /* 增加内边距优化文字显示 */
  text-align: center;
  /* 初始状态:完全隐藏在容器底部 */
  transform: translateY(100%);
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

/* 父容器hover时的联动效果 */
.product-box:hover .image1 {
  transform: scale(1.04);
  opacity: 0.5;
}

.product-box:hover .middle {
  /* 滑入效果:回到容器底部位置 */
  transform: translateY(0);
  opacity: 1;
}

HTML

<div class="container">
  <div class="product-box">
    <img src="https://phpmysqlappdiag454.blob.core.windows.net/blob/assets/images/hotelkos/Rectangle 14.png" alt="Suites" class="image1">
    <div class="middle">
      <p>Suites</p>
    </div>
  </div>
</div>

效果说明

  • 初始状态:图片正常展示,文字隐藏在容器底部(匹配右侧预期样式)
  • 悬停状态:图片轻微放大并变暗,文字从底部平滑滑入显示(匹配左侧效果)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 21:50:38