带alpha通道的颜色的十六进制表示?

时间:2009-09-14 02:28:26

标签: colors standards

是否有关于如何以十六进制格式表示颜色(包括alpha通道)的W3或任何其他值得注意的标准?

是#RGBA还是#ARGB?

5 个答案:

答案 0 :(得分:81)

看起来没有十六进制alpha格式:http://www.w3.org/TR/css3-color/

无论如何,如果您使用像SASS这样的CSS预处理器,那么您可以将十六进制传递给rgba: 背景:

rgba(#000, 0.5);

预处理器只是将十六进制代码自动转换为rgb。

答案 1 :(得分:70)

在CSS 3中,引用规范,“RGBA值没有十六进制表示法”(参见CSS Level 3 spec)。相反,您可以使用带小数或百分比的rgba()函数表示法,例如: rgba(255,0,0,0.5)将是50%透明的红色。 RGB通道为0-255或0%-100%,alpha为0-1。

在CSS 4 *中,您可以使用8位十六进制颜色的第7和第8个字符或4位十六进制颜色的第4个字符指定Alpha通道(请参阅CSS Level 4 spec *)

截至2019年5月,> 80%的用户可以理解#RGBA格式

  • 自Firefox 49(Mozilla bug 567283)。
  • 以来,Firefox支持此语法
  • Safari自Safari 10以来一直支持此语法。
  • Chrome自Chrome 62以来一直支持此语法。对于早期版本,您可以启用实验性网络功能来使用此语法。请参阅Chromium Issue 618472Webkit bug 150853
  • 针对Android P或更新版本的Android应用可以使用此语法
  • Opera在Opera 52(或启用实验性网络功能时的Opera 39)中支持此语法。
  • IE 11和EdgeHTML 18(Edge 44)不支持此语法。基于Chromium的Edge版本将支持此语法。

最新的浏览器支持信息为available on CanIUse.com

*技术上仍处于草案状态,但鉴于浏览器支持,这种情况不太可能改变。

答案 2 :(得分:14)

我不确定是否有官方标准 -

RGBA是我见过的Web代表 Macromedia和其他人使用ARGB

我认为RGBA是更常见的表现形式。

如果有帮助,这是来自W3 for CSS3
http://www.w3.org/TR/css3-color/#rgba-color

编辑(Patrick):引用上面的W3链接

  

与RGB值不同,RGBA值没有十六进制表示法

答案 3 :(得分:4)

Chrome 52 + supports alpha hex:

background: #56ff0077;

对于旧版浏览器,您必须使用:

background-color: rgba(255, 220, 0, 0.3);

答案 4 :(得分:3)

您可以尝试将十六进制颜色放入GIMP或照相馆的颜色选择器中以获取RGB值,然后使用alpha值。例如。红色为#FF0000rgb(255,0,0),如果您想要红色,其alpha值为.5,则为rgba(255,0,0,.5)

也许不完全是你想要的,但希望有所帮助。