angular - CSS 仅在 Firefox 上转换缩放和翻译滞后
问题描述
我正在使用变换 scale() 和 translate3d() 为悬停的标题设置动画。我的 Typescript 在三个不同的 div 上监听 mousemove 并相应地更改 svg 图像的 translate3d 样式。
在 Chrome 和 Edge 上一切正常,但在 Firefox 上动画效果不佳。因此,在 scale() 转换期间以及有时在 translate3d() 期间,性能似乎会下降。我制作了这个stackblitz来重现我的问题。
我知道浏览器之间的性能已经在这里讨论过,但是我尝试了所有遇到的解决方案,但都没有成功:
- 使用带有变换的廉价动画,而不是更改元素的宽度/边距
- 在绝对定位中修复元素
- 更改背面可见性
- 使用 will-transform
- 通过 translateZ() 或 rotateZ() 欺骗浏览器以使用硬件加速
我仍然使用 padding-top 方法来制作我的 div 方块,但是即使我删除它,延迟仍然存在。
有没有办法调整我的动画以使用更少的 CPU?为什么 Firefox 不能处理这些?
提前感谢您提出的任何建议。
解决方案
推荐阅读
- c - 使用C在Linux上递归列出树中的所有目录
- node.js - 使用 Discord.js 进行日志记录(使用 FS)
- python - 熊猫不会进口
- python - 逐行读取文本输入并添加到列表中
- android - Android - 阅读谷歌日历事件不再起作用(似乎有某种缓存不返回正确/新鲜的数据)
- c++ - 仅使用类模板的一个实例是否仍会导致代码膨胀?
- reactjs - 部署后 React 应用与 Heroku 崩溃
- c - 对范围 [p,q] 内的所有整数求和,其中 p 和 q 可以按任意顺序输入
- ios - iOS 13.4 模拟器捕获光标问题
- excel - 使用 vb.net 中的 XML 从 datagridview 导出到 excel