哪一个更快:十六进制颜色代码或颜色名称?

时间:2011-07-10 10:33:52

标签: css colors hex

我只是想知道当我想在CSS中使用它时,使用十六进制颜色代码或颜色名称是否更快?

3 个答案:

答案 0 :(得分:15)

我的猜测是代码会更快,因为无论如何都可能将名称分配给查找表和引用十六进制代码。

话虽这么说,我的猜测是速度差异完全可以忽略不计。

这是我刚刚创建的性能测试。它们是颈部和颈部,虽然十六进制代码到目前为止在4/5运行时似乎只有几乎更快: http://jsperf.com/css-color-names-vs-hex-codes

答案 1 :(得分:7)

如果查找表将颜色值作为整数返回,我将反对流行的共识,并建议颜色名称可能更快。这意味着当使用命名颜色时,浏览器不必手动从包含十六进制字符的字符串解析为相应的整数,它需要做的只是O(1)散列查找。这可能比从字符串解析为整数稍快一些。

虽然正如其他人正确指出的那样,但从实际角度来看,两者之间的差异将是无限小的。不是你在实践中会注意到的东西。

答案 2 :(得分:5)

渲染速度更快?

实际上,没有任何可能的方法可以产生任何不同。

从技术角度来说,这取决于每个浏览器中CSS渲染的实现方式。如果我不得不猜测,我想在大多数浏览器中使用hex大约3个CPU周期(夸张),因为名称必须首先转换为十六进制。

但是,你提出这个问题所花费的时间比自从发明互联网以来世界上所有浏览器都浪费了更多的时间。