解决css使用@keyframes/animation属性失效的问题

导致该属性失效的原因可能有很多种,这里记录我遇到的一种:

因为在使用@keyframes时用了 !important 导致属性失效,如:

以下代码阴影不生效:

javascript 复制代码
@keyframes goshadow {
    0% {
      box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.12) !important;
    }

    50% {
      box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.12) !important;
    }

    100% {
      box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.12) !important;
    }
  }
.shawCard {
   animation: goshadow 2s infinite !important;
}

以下代码阴影生效:

javascript 复制代码
@keyframes goshadow {
    0% {
      box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.12);
    }

    50% {
      box-shadow: 0px 0px 0px rgba(0, 0, 0, 0.12);
    }

    100% {
      box-shadow: 0px 0px 12px rgba(0, 0, 0, 0.12);
    }
  }
.shawCard {
   animation: goshadow 2s infinite;
}

在 CSS 动画中,!important 关键字在 @keyframes 规则内部通常是不起作用的,因为关键帧规则本身具有更高的优先级,它们直接定义了在动画过程中的样式变化。此外,在动画的简写属性 animation 中使用 !important 也是不标准的,并且通常不会按预期工作,

相关推荐
IMPYLH3 分钟前
HTML 的 <a>元素
前端·javascript·html
PedroQue996 分钟前
uni-router:uni-app路由管理新选择
前端·uni-app
Cerrda10 分钟前
一行指令搞定复制:Vue 3 vCopy 实现解析
前端·代码规范
英勇无比的消炎药14 分钟前
前端提效神器TinyRobot
前端·vue.js
CDwenhuohuo26 分钟前
uni 背景色渐变 全屏
前端·javascript·vue.js
爱怪笑的小杰杰28 分钟前
Vue 项目交付第三方开发,如何隐藏核心 JS 源码?
前端·javascript·vue.js
之歆31 分钟前
Node.js 与 NPM 包管理完全指南
前端·npm·node.js
小二·40 分钟前
Vue 3 组合式 API 进阶实战
前端·javascript·vue.js
12点一刻42 分钟前
npx 使用入门教程:是什么、怎么用、和 npm 有什么区别
前端·npm·node.js
console.log('npc')43 分钟前
将 Figma 接入 Codex MCP:从 `/plugins` 到本地插件配置的完整教程
前端·人工智能·python·figma·code·codex·mcp