解决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 也是不标准的,并且通常不会按预期工作,

相关推荐
换日线°1 小时前
前端炫酷展开效果
前端·javascript·vue
夏幻灵2 小时前
过来人的经验-前端学习路线
前端
CappuccinoRose2 小时前
React框架学习文档(七)
开发语言·前端·javascript·react.js·前端框架·reactjs·react router
FFF-X2 小时前
前端字符串模糊匹配实现:精准匹配 + Levenshtein 编辑距离兜底
前端
Hi_kenyon2 小时前
Ref和Reactive都是什么时候使用?
前端·javascript·vue.js
小小测试开发2 小时前
UI自动化测试:CSS定位方式超详细解析(附实战示例)
css·ui·tensorflow
止观止3 小时前
深入理解 interface vs type:终结之争
前端·typescript
css趣多多3 小时前
vue环境变量
前端
RFCEO3 小时前
前端编程 课程十五、:CSS核心基础3:文字+段落样式
前端·css·文字+段落样式·css文本样式·美化页面文本内容·演示动画说明·单行文字垂直居中技
摇滚侠3 小时前
【程序员入门系列】jQuery 零基础入门到精通!Jquery 选择器 API
前端·javascript·jquery