You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

同时使用CSS动画与backdrop-filter导致CPU占用过高求助

CSS动画与backdrop-filter共存时CPU占用过高的优化求助

问题详情

我的页面中有若干仅使用transform属性的无限循环CSS关键帧动画,示例代码如下:

@keyframes movement-rotation-effect-first {
  0% {
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
  }
  17% {
    transform: translate(-6px, -6px);
    -webkit-transform: translate(-6px, -6px);
  }
  34% {
    transform: translate(6px, 0);
    -webkit-transform: translate(6px, 0);
  }
  51% {
    transform: translate(0, 6px);
    -webkit-transform: translate(0, 6px);
  }
  68% {
    transform: translate(6px, -6px);
    -webkit-transform: translate(6px, -6px);
  }
  85% {
    transform: translate(-6px, 0);
    -webkit-transform: translate(-6px, 0);
  }
  100% {
    transform: translate(0, 0);
    -webkit-transform: translate(0, 0);
  }
}

animation: movement-rotation-effect-first 10s linear infinite;
-webkit-animation: movement-rotation-effect-first 10s linear infinite;

同时页面还有若干未添加动画、应用了backdrop-filter模糊效果的元素,代码如下:

@supports (-webkit-backdrop-filter: blur(25px)) or (backdrop-filter: blur(25px)) {
   backdrop-filter: blur(25px);
   -webkit-backdrop-filter: blur(25px);
}

单独保留backdrop-filter时页面运行正常,单独保留动画时也没问题,但同时启用两者时,CPU占用骤增,设备风扇噪音明显变大。需要说明的是,应用backdrop-filter的元素和动画元素是完全不同的元素,backdrop-filter也没有包含在动画定义中。

已尝试的无效优化方案

我试过添加以下优化样式,但没有任何效果:

.animation-fix {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  perspective: 1000px;
  -webkit-perspective: 1000px;
  transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  will-change: transform;
}

因为页面需要同时保留动画和backdrop-filter效果,恳请各位提供可行的CPU优化方案,感谢帮助!

补充:已将测试页面上传至服务器供测试。


内容的提问来源于stack exchange,提问作者LeonidasGolova

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 03:15:57