gpt4 book ai didi

css - CSS3 过渡性能的注意事项

转载 作者:技术小花猫 更新时间:2023-10-29 10:35:06 25 4
gpt4 key购买 nike

作为需要支持移动设备的元素的一部分,我一直致力于使用 CSS3 模仿 iPhone 切换控件。我几乎已经了解了该元素的外观,并且正在使用 CSS3 过渡来为其状态变化设置动画。

当我将元素本身放在页面上而没有其他元素时,iOS 上的过渡相对平滑。但是,当我将它与页面上的其他 CSS 元素结合使用时,iOS 中的结果会很慢。它比原始 jQuery 动画稍微好一点,但也好不了多少。

我设置了两个测试页面来演示我的意思(在常规浏览器中几乎看不出区别):

自行切换控件> http://ben-major.co.uk/labs/iPhone%20UI/ios_toggle.html

结合其他元素> http://ben-major.co.uk/labs/iPhone%20UI/

我正在寻找有关加速移动设备过渡的任何建议。哪些因素可能会降低其在整页测试中的性能?

欢迎任何建议和评论。

最佳答案

你必须小心这个,因为它可以改变它所应用的元素的 z-index,但是添加:

-webkit-transform-style: preserve-3d;

对于您应用过渡的元素,可以显着加快动画速度,因为它强制硬件为动画使用硬件加速。

如果确实遇到布局错误,您可以将 2d 过渡切换为 3d 值,因此:

-webkit-transform: translate(100px, 100px)

变成:

-webkit-transform: translate3d(100px, 100px, 0px)

您可以在 http://stickmanventures.com/labs/demo/spinning-gears-Chrome-preserve-3d/# 查看这如何帮助加快速度的演示。

如果将此应用于元素后,您看到它或它周围的元素在使用时闪烁,则使用:

-webkit-backface-visibility: hidden;

到元素,这应该可以解决问题。

这些技巧帮助我制作了快速、高效的 CSS 过渡,希望它们有所帮助。 :)

关于css - CSS3 过渡性能的注意事项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7908493/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com