我对此感到疑惑,经过一番挖掘,找到了this resource,链接在this answer。
资源说明:
背景与背景颜色
在页面上渲染100次的18种颜色样本的比较小 矩形,一次带背景,一次带背景色。
| -------------------------------------------- | | Page | Safari 7.0.1 | Chrome 33 | | -----------------|-------------------------- | | background | 44.9ms | 34.45ms | | -----------------|-------------------------- | | background-color | 87.5ms | 69.34ms | | -------------------------------------------- |
现在,我想象background-color
更快,因为资源也是如此:
我认为当浏览器看到
background: #000;
时,他们真的看到了background: #000 none no-repeat top center;
。我没有这里的资源链接,但我记得在某处读过这篇文章。
是什么给出的?为什么background
比background-color
更快?
答案 0 :(得分:5)
您已链接的Github存储库的关键点:
- 这些都不是非常准确。
- 这些是通过
file:///
网址加载的本地网页时间。- 没有什么是平均的。 这是单页加载。
- 唯一经过测试的平台是 OS X (目前为10.9.1)。
- 我没有开发人员工具专家(在任何浏览器中)。
- Firefox的开发工具使用起来很糟糕,我现在还没有将它们包含在测试中。
除非你在不同的浏览器(及其版本)和各种不同机器上的操作系统上重复数千次甚至数十万次,否则结果就毫无意义。在一个测试实例中,不同浏览器的加载时间之间存在相关性,这可能完全是巧合。
此外,这是一项非常具体的测试。它在OS X上测试Safari 7.0.1和Chrome 33.那么Safari 5.1,6,7.0.0呢?那么Chrome 4,33,44呢? Firefox,Opera和Internet Explorer怎么样?那么Windows或Linux呢?那么移动设备呢?
您的问题不是'为什么background
比background-color
' 更快,您的问题是'为什么在OS X上运行的一个测试显示background
在两个不同浏览器的特定版本上比background-color
更快' 。这是一个有无数可能性的问题。