可能是重复问题:
在CSS中,使用十六进制的RGB颜色值是否比使用十进制更好?
在CSS样式表中,应该使用RGB还是HEX来表示颜色?
如果其中一个比另一个更受青睐,为什么?
是否存在未来证明、处理速度、平台/浏览器之间更好的兼容性等方面的差异?
可能是重复问题:
在CSS中,使用十六进制的RGB颜色值是否比使用十进制更好?
在CSS样式表中,应该使用RGB还是HEX来表示颜色?
如果其中一个比另一个更受青睐,为什么?
是否存在未来证明、处理速度、平台/浏览器之间更好的兼容性等方面的差异?
我认为使用RGB或HEX主要是个人口味问题。个人而言,我使用HEX,因为它更方便 - 在阅读代码时更容易扫描并从您喜欢的图像编辑器中更容易复制。另外,对于像白色(#fff)、黑色(#000)这样的颜色,它可以为您节省一些字节(尽管这并不会产生太大的差异)。
最终,这只是同一件事情的两种不同表示方法,从性能角度来看,我认为这并不重要。至少有很多其他事情可以做来提高性能,这将对性能产生更大的影响。
通常情况下,您可以直接从图形编辑器中复制十六进制值——从一个单一文本字段中。但对于RGB值,则不行:RGB值通常通过三个单独的文本字段表示。因此,对于日常使用而言,十六进制值至少更容易使用。
但是有一段时间没有办法使用带有透明度的值的十六进制表示法,因此我们被迫使用rgba()
函数来表示RGB值。
CSS Color Module Level 4草案规范新增了8位十六进制符号的表示法#RRGGBBAA
和#RGBA
,例如:#00ffaa80
等同于rgba(0, 255, 170, .5)
。该功能在Firefox 49+,Chromium 62+和Safari 10+ (WebKit bug)中可用,但在IE和Edge中不可用。根据caniuse的数据,目前有75%的浏览器支持这种表示法,因此它可能还不能在实际应用中使用,但可以在浏览器插件中使用。
HEX在企业服务中非常稳定。它易于维护(预处理器和工作人员友好),并且支持许多浏览器。
但是,如果您喜欢的话,颜色名称也不错。从调色板中选择颜色很有趣,并且已经定义了许多颜色。
因此,它是一个附录。我现在在我的个人实验性网站上使用 HLSA 颜色模式。如果您对新的CSS3草案感兴趣,请查看 http://www.w3.org/TR/css3-color/ 。如果您知道自然现象的颜色规则,则非常直观。