Layui 的 card 面板需通过自定义 CSS 实现 hover 上移+阴影动效,推荐添加 .card-hover 类并设置 transition、transform 和 box-shadow;也可全局覆盖 .layui-card 样式,注意父容器 overflow 和 z-index 等兼容性问题。

在 Layui 中,card 面板本身不自带 hover 上移+阴影的动效,但你可以通过自定义 CSS 轻松实现。Layui 的 card 本质是带 .layui-card 类的普通 div 容器,完全支持标准 CSS 过渡(transition)和 transform 效果。
1. 给 card 添加 hover 动效类(推荐方式)
不修改 Layui 源码,而是给目标 card 元素添加一个自定义类名(如 card-hover),再用 CSS 控制:
<div class="layui-card card-hover"> <div class="layui-card-header">标题</div> <div class="layui-card-body">内容区域</div> </div>
对应 CSS(可放在页面 <style> 中或外部样式表):
.card-hover {
transition: all 0.3s ease;
box-shadow: 0 2px 6px rgba(0,0,0,0.08);
}
.card-hover:hover {
transform: translateY(-4px);
box-shadow: 0 12px 20px rgba(0,0,0,0.12);
}说明:
- transition: all 0.3s ease 让位移和阴影变化平滑过渡
- transform: translateY(-4px) 向上微移 4px(数值可调)
- box-shadow 的第二组值增强阴影深度和模糊度,增强“浮起”感
2. 全局统一启用(可选)
如果希望所有 card 默认都有该效果,直接覆盖 Layui 原始类:
.layui-card {
transition: all 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.layui-card:hover {
transform: translateY(-3px);
box-shadow: 0 8px 16px rgba(0,0,0,0.1);
}注意:Layui 4.x 版本中 card 结构更规范,此写法兼容性好;若使用旧版(如 2.8),请确认 card 结构未被嵌套多层容器干扰 transform 效果。
3. 避免常见问题
-
父容器 overflow: hidden:若 card 外层有
overflow: hidden,上移时可能被裁剪,需移除或设为visible -
z-index 层级不够:悬浮时被其他元素遮挡?给
.card-hover:hover加z-index: 10提升层级 -
移动端误触发:iOS Safari 等可能对 hover 响应迟钝,如需兼容触屏,可配合
:active或 JS 监听touchstart
不复杂但容易忽略细节,加几行 CSS 就能让 Layui 卡片立刻更有现代交互感。


















