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

相关推荐
华洛30 分钟前
公开一个AI产品的商业逻辑与设计方案——AI带来的涂色卡自由
前端·后端·产品
明远湖之鱼38 分钟前
opentype.js 使用与文字渲染
前端·svg·字体
90后的晨仔1 小时前
Vue 3 组合式函数(Composables)全面解析:从原理到实战
前端·vue.js
今天头发还在吗1 小时前
【React】动态SVG连接线实现:图片与按钮的可视化映射
前端·javascript·react.js·typescript·前端框架
小刘不知道叫啥1 小时前
React 源码揭秘 | suspense 和 unwind流程
前端·javascript·react.js
szial1 小时前
为什么 React 推荐 “不可变更新”:深入理解 React 的核心设计理念
前端·react.js·前端框架
mapbar_front2 小时前
面试是一门学问
前端·面试
90后的晨仔2 小时前
Vue 3 中 Provide / Inject 在异步时不起作用原因分析(二)?
前端·vue.js
90后的晨仔2 小时前
Vue 3 中 Provide / Inject 在异步时不起作用原因分析(一)?
前端·vue.js
90后的晨仔2 小时前
Vue 异步组件(defineAsyncComponent)全指南:写给新手的小白实战笔记
前端·vue.js