Element Plus骨架屏怎么自定义动画速度? Designer°瑞腾 提问于 2026-03-13 08:38:18 阅读 77 组件 我在用 Element Plus 的 Skeleton 组件,但默认的闪烁动画太快了,看着有点晕。官方文档里好像没找到控制动画速度的属性,试过加 CSS 覆盖也不生效。 比如我写了这段代码: <el-skeleton :rows="3" animated /> 想让动画慢一点,该怎么做?是不是得自己写 CSS 动画覆盖?求具体写法。 我来解答 赞 10 收藏 分享 生成中... 手机扫码查看 复制链接 生成海报 反馈 发表解答 您需要先 登录/注册 才能发表解答 2 条解答 闲人钰岩 Lv1 确实 Element Plus 的 Skeleton 组件默认动画速度是固定的,文档里也没直接提供修改动画速度的属性。不过通过自定义 CSS 是可以解决这个问题的。 推荐的做法是覆盖默认的动画类名。Element Plus 骨架屏用的是一个叫 .el-skeleton__animate 的类来控制动画效果。我们可以通过更高优先级的选择器来覆盖它。 你需要这样写 CSS: .el-skeleton { --skeleton-animation-duration: 2s; /* 自定义动画时间 */ } .el-skeleton__animate { animation-duration: var(--skeleton-animation-duration); } 注意要确保你的 CSS 文件在 Element Plus 样式之后加载,或者使用更高优先级的选择器比如加上父级限定。有时候可能需要加上 !important 来强制覆盖,但这个就看具体项目的样式层级了。 说真的,CSS 覆盖这种操作虽然有点麻烦,但比起自己重写整个组件还是简单多了。要是觉得麻烦,也可以考虑封装成 mixin 或者单独的样式文件统一管理。 回复 点赞 2026-03-27 16:01 Prog.书瑜 Lv1 直接改 CSS 变量就行,Element Plus 留了坑让你填的。 .el-skeleton { --el-skeleton-duration: 2s; /* 默认是 1.5s,改成你想要的值 */ } 或者如果你想更直接点,覆盖动画本身: .el-skeleton .el-skeleton__item::after { animation: skeleton-loading 2s infinite; } @keyframes skeleton-loading { 0% { transform: translateX(-100%); } 100% { transform: translateX(100%); } } 第一种方式最简单,改个变量完事儿。代码放这了,自己挑一个用。 回复 点赞 2026-03-13 09:03 加载更多 相关推荐 2 回答 72 浏览 Element Plus时间线怎么自定义节点图标? 我用Element Plus的Timeline组件,想把默认的圆点换成自定义图标,但文档里没看懂怎么弄。试了在el-timeline-item里加icon属性,结果根本没生效,控制台也没报错,就是显示... 西门奥杰 组件 2026-02-26 17:19:19 1 回答 58 浏览 Element Plus日历组件怎么自定义日期单元格内容? 我在用Element Plus的Calendar组件,想在每个日期格子里显示自定义内容,比如当天的待办数量。官方文档说可以用scoped slot,但我试了date-cell好像没生效? 我这样写的:... 金壵(打工版) 组件 2026-03-17 16:23:20 2 回答 38 浏览 Element Plus骨架屏怎么动态控制显示和隐藏? 我用Element Plus的Skeleton做加载占位,但不知道怎么在数据加载完后自动隐藏它。试了v-if绑定loading状态,但骨架屏一闪就没了,体验不好。 这是我的代码: <templa... 码农玉戈 组件 2026-03-04 13:08:25 1 回答 44 浏览 Element Plus分页组件怎么自定义每页显示条数? 我在用Element Plus的Pagination做表格分页,想让用户自己选每页显示多少条,比如10、20、50这样。但文档里没太看懂怎么配置,试了:page-sizes="[10, 20, 50]... Designer°自立 组件 2026-03-30 10:00:14 1 回答 28 浏览 Element Plus日历组件怎么自定义日期样式? 我在用 Element Plus 的 Calendar 组件,想把某些特殊日期(比如节假日)标红,但文档里没找到怎么改单个日期的样式。 试过用 :date-class 属性返回类名,但好像没生效。是不... 端木诗诗 组件 2026-03-25 10:08:21 2 回答 46 浏览 Element Plus 描述列表样式不生效怎么办? 我在用 Element Plus 的 Descriptions 组件时,想自定义 label 的宽度,但加了 CSS 好像没反应,是不是我写法有问题? 试过在组件外层加 class,也试过用 :dee... 司马玉鑫 组件 2026-03-24 17:07:19 1 回答 60 浏览 Element Plus分页组件怎么自定义每页显示数量? 我在用Element Plus的Pagination组件,想让用户能自己选每页显示10、20、50条,但不知道咋配置。试过加page-sizes属性,但没生效,控制台也没报错,就是下拉框出不来。 我的... ♫恒宇 组件 2026-03-23 08:18:19 2 回答 67 浏览 Element Plus折叠面板怎么默认展开指定项? 我用Element Plus的Collapse组件做了一个FAQ列表,但不知道怎么让其中某一项默认展开。文档里说可以用v-model绑定激活的面板,但我试了好像没生效,页面加载时还是全部收起的。 我绑... Mr-自立 组件 2026-03-16 22:02:27 2 回答 52 浏览 Element Plus 的 Result 组件怎么自定义图标? 我用 Element Plus 的 Result 组件展示操作结果,但想把默认的图标换成自己的 SVG 图标,试了 icon 属性但没生效,是不是用法不对? 官方文档说 icon 支持传入组件,但我直... 启航 组件 2026-03-06 11:46:20 1 回答 37 浏览 Element Plus 的 Statistic 组件怎么自定义前缀和后缀样式? 我用 Element Plus 的 Statistic 组件展示数据,但默认的前缀(比如“¥”)和后缀(比如“元”)样式太小了,想改大一点,试了加 class 好像没生效? 我在文档里看到有 pref... 弯弯 组件 2026-02-26 23:17:21
推荐的做法是覆盖默认的动画类名。Element Plus 骨架屏用的是一个叫
.el-skeleton__animate的类来控制动画效果。我们可以通过更高优先级的选择器来覆盖它。你需要这样写 CSS:
注意要确保你的 CSS 文件在 Element Plus 样式之后加载,或者使用更高优先级的选择器比如加上父级限定。有时候可能需要加上
!important来强制覆盖,但这个就看具体项目的样式层级了。说真的,CSS 覆盖这种操作虽然有点麻烦,但比起自己重写整个组件还是简单多了。要是觉得麻烦,也可以考虑封装成 mixin 或者单独的样式文件统一管理。
或者如果你想更直接点,覆盖动画本身:
第一种方式最简单,改个变量完事儿。代码放这了,自己挑一个用。