我们都知道 background-attachment: fixed 使背景固定并产生视差效果。然而,这是非常昂贵的,因为每次在页面上滚动时 DOM 都必须重新绘制。这会让您的网站感觉有点不稳定,尤其是当您的页面上有多个固定背景时。有谁知道更好的方法吗?
最佳答案
This pure CSS example使用绝对定位、transform
和perspective
来渲染视差效果。对于某些浏览器,scroll-behavior: smooth
也可以最小化一些可见的波动。
通过仅对可见元素设置动画并使用间隔更新元素位置,使用 JavaScript 可以更有效地呈现视差效果。 This article更详细地解释了其中一些技术。 requestAnimationFrame
函数特别允许浏览器在下一次可用重绘时执行滚动动画。
关于css - 在 css 中创建视差固定背景图像的更有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41337955/