【问题标题】:Why does background-size: cover; slow down my jquery animation?为什么背景大小:覆盖;减慢我的 jquery 动画?
【发布时间】:2011-10-26 22:31:57
【问题描述】:

我一直在努力理解为什么我刚开始构建的网站上的 jQuery 动画运行如此缓慢。事实证明这与我已应用于大背景的 background-size:cover 有关身体标签上的图像。

只有在 Firefox 中才会出现缓慢的性能,在 safari 和 chrome 中表现良好,我尝试禁用所有附加组件,所以不要认为它有任何影响。

当我在 firebug 中关闭背景大小时,我的 jQuery slideDown 效果运行顺畅。把它放回去,他们跑得更生涩。当我改用 CSS3 过渡动画时,也会发生同样的事情。

知道为什么 background-size 属性会影响动画吗?

有问题的页面是:http://flc.timidmedia.co.uk/ 如果您将鼠标悬停在右侧列上的任何框,您应该会看到动画。

【问题讨论】:

  • 不是一个真正的答案,但是:你不能让背景的大小合适吗?将小bg 变大会使它变得丑陋,而将大bg 变小会使它变得不必要的大。我在您的网站上发现的另一件事:如果您将鼠标悬停/鼠标悬停在展开的潜文本上多次,它会多次折叠/折叠
  • 嗯,但是合适的尺寸是多少?我已经将图像制作为 2560x1440,因为这几乎是通常可用的最大分辨率。确保它的文件大小也相当大……我选择 background-size:cover 的全部原因是为了使图像“正确”大多数屏幕分辨率的大小'.. ..我知道动画链接有问题,但我被这个'问题'转移了方向。感谢您的评论。

标签: jquery firefox css


【解决方案1】:

可能是因为background-size:cover 必须进行额外的计算才能正确渲染。

请参阅此说明,了解如何使其正常工作。

封面

指定背景图像应缩放为 尽可能小,同时确保其两个尺寸都更大 大于或等于背景的相应尺寸 定位区域。

https://developer.mozilla.org/en/CSS/background-size

只是猜测,但也许 FF 的引擎在这个上很慢?

【讨论】:

  • 是的,我认为它会在浏览器上更加密集......但是当浏览器窗口没有调整大小时,您肯定不会认为它会给浏览器带来那么大的压力?
  • 我知道这是一篇旧帖子,但今天偶然发现并想回复 Tim 的评论 - 即使浏览器没有调整大小,它仍在移动 DOM 元素,这需要浏览器重绘因此重新计算背景大小。
猜你喜欢
  • 2013-05-04
  • 2011-11-08
  • 2015-07-08
  • 1970-01-01
  • 2019-04-06
  • 1970-01-01
  • 2018-01-03
  • 2021-06-07
  • 1970-01-01
相关资源
最近更新 更多