卡片悬停上浮特效(上浮+阴影+描边发光 CSS 源码)

CSS 许可:自研原创

4 款卡片悬停上浮特效源码:基础上浮、上浮发光描边、图标弹跳、渐变描边,纯 CSS 实现,适合功能入口与产品展示卡片。

效果演示(真实可交互)

下方 4 张卡片分别演示不同的悬停上浮姿态:基础阴影上浮、发光描边上浮、图标弹跳上浮、渐变描边上浮。

📊

基础上浮

translateY 上浮 8px,阴影同步加深变大,最通用的卡片悬停姿态。

上浮 + 发光描边

上浮的同时边框点亮主题色并向外扩散光晕,适合深色页面强调焦点。

🚀

上浮 + 图标弹跳

卡片上浮时图标轻微弹跳,增加趣味性,适合产品功能入口卡片。

🌈

上浮 + 渐变描边

使用渐变边框提升质感,悬停时卡片整体轻微倾斜,视觉更立体。

完整代码

HTML 结构:四张卡片共用一个 .card 基类,通过追加不同类名切换效果:

<div class="card c-lift">…内容…</div>
<div class="card c-glow">…内容…</div>
<div class="card c-bounce">…内容…</div>
<div class="card c-grad">…内容…</div>

核心 CSS:

.card {
  background: #1c2029;
  border: 1px solid #2a2f3a;
  border-radius: 14px;
  transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease;
  will-change: transform;
}

/* ① 基础上浮:上移 8px + 阴影加深 */
.c-lift:hover {
  transform: translateY(-8px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, .35);
}

/* ② 上浮 + 发光描边 */
.c-glow:hover {
  transform: translateY(-8px);
  border-color: #6c8cff;
  box-shadow: 0 12px 24px rgba(108, 140, 255, .25);
}

/* ③ 上浮 + 图标弹跳 */
.c-bounce:hover { transform: translateY(-8px); box-shadow: 0 14px 28px rgba(0,0,0,.35); }
.c-bounce:hover .c-icon { animation: bounce .5s ease; }
@keyframes bounce {
  0% { transform: translateY(0); }
  40% { transform: translateY(-8px) scale(1.1); }
  100% { transform: translateY(0) scale(1); }
}

/* ④ 渐变描边:双层背景实现 */
.c-grad {
  border: 2px solid transparent;
  background:
    linear-gradient(#1c2029, #1c2029) padding-box,
    linear-gradient(135deg, #6c8cff, #b388ff) border-box;
}
.c-grad:hover {
  transform: translateY(-8px) rotate(-1deg);
  box-shadow: 0 14px 28px rgba(108, 140, 255, .28);
}

参数说明

参数默认值说明
translateY-8px悬停上浮距离,越大越明显
阴影 14px 28px阴影扩散程度,控制悬浮感
发光颜色#6c8cff描边/光晕主题色
动画时长.3s上浮速度,建议 0.25-0.4s 之间
rotate(-1deg)渐变描边卡片的轻微倾斜角度

兼容性与性能

常见问题

Q: 阴影太大显得脏,怎么调? 把阴影值改小,比如 0 8px 16px,同时把透明度从 .35 降到 .25,悬浮感会更细腻。

Q: 图标弹跳动画能换方向吗? 可以,改 @keyframes bounce 里的 translateYscale 值即可,比如加一个 rotate 做旋转弹跳。

Q: 渐变描边卡片的背景色改了,边框渐变会失效吗? 不会,边框渐变来自 border-box 层,与内层背景色相互独立,只改内层颜色即可。

Q: 可以商用吗? 可以,粤喵自研原创组件,免费商用无需署名。

常见问题

这个组件可以商用吗?

可以。本组件为粤喵自研原创,可免费用于个人和商业项目,无需署名。

浏览器兼容性如何?

支持所有现代浏览器(Chrome / Firefox / Safari / Edge 最新版本)。旧版 IE 不支持 CSS 动画相关特性。

怎么修改动画参数?

直接调整 CSS 中的 animation-duration(时长)、animation-timing-function(缓动曲线)等属性即可,代码中有注释说明。