带 Alpha 通道的颜色的十六进制表示?
关于如何以十六进制格式表示颜色(包括 Alpha 通道),是否有 W3 或任何其他值得注意的标准?
是#RGBA 还是#ARGB?
Is there a W3 or any other noteworthy standard on how to represent a color (including alpha channel) in hex format?
Is it #RGBA or #ARGB?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
在 CSS 3 中,引用规范,“RGBA 值没有十六进制表示法”(请参阅 CSS 3 级规范)。相反,您可以使用带有小数或百分比的 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 颜色模块级别 4 规范*)
截至 2022 年 7 月,预计超过 95% 的用户了解 #RGBA 格式
自 2016 年 9 月发布的 Firefox 49 起就开始支持它
不支持:
最新的浏览器支持信息可在 CanIUse.com 上获取
In CSS 3, to quote from the spec, "there is no hexadecimal notation for an RGBA value" (see CSS Level 3 spec). Instead you can the use rgba() functional notation with decimals or percentages, e.g. rgba(255, 0, 0, 0.5) would be 50% transparent red. RGB channels are 0-255 or 0%-100%, alpha is 0-1.
In CSS Color Level 4, you can specify the alpha channel using the 7th and 8th characters of an 8 digit hex colour, or 4th character of a 4 digit hex colour (see CSS Color Module Level 4 spec*)
As of July 2022, >95% of users can be expected to understand the #RGBA format
It has been supported since:
It is not supported in:
Up to date browser support information is available on CanIUse.com
看起来没有十六进制 alpha 格式: http://www.w3.org/TR/css3-color/< /a>
无论如何,如果您使用像 SASS 这样的 CSS 预处理器,那么您可以将十六进制传递给
rgba
:背景:
预处理器只是自动将十六进制代码转换为RGB。
It looks like there is no hex alpha format: http://www.w3.org/TR/css3-color/
Anyway, if you use a CSS preprocessor like SASS then you can pass an hex to
rgba
:background:
And the preprocessor just converts the hex code to rgb automatically.
我不确定是否有官方标准 -
RGBA 是我见过的 Web 表示形式
Macromedia 和其他人使用 ARGB
我相信 RGBA 是更常见的表示形式。
如果有帮助的话,这是来自 W3 for CSS3
http://www.w3.org/TR/css3-color/#rgba -color
编辑 (Patrick):引用上述 W3 链接
I'm not sure if there is an official standard-
RGBA is the representation I've seen for Web
Macromedia and others use ARGB
I believe that RGBA is the more common representation.
If it helps this is from W3 for CSS3
http://www.w3.org/TR/css3-color/#rgba-color
EDIT (Patrick): quote from the above W3 link
Chrome 52+ 支持 alpha 十六进制:
对于较旧的浏览器,您必须使用:
Chrome 52+ supports alpha hex:
For older browsers, you'll have to use:
您可以尝试将十六进制颜色放入 GIMP 或 photoshop 的颜色选择器中以获取 RGB 值,然后使用 alpha 值。例如。红色是
#FF0000
或rgb(255,0,0
) 如果您想要 alpha 值为 0.5 的红色,则rgba(255,0,0, .5)
。也许不完全是你想要的,但希望有帮助。
You could try putting the hex color into the color picker of GIMP or photo shop to get the RGB value and then using the alpha value. eg. red is
#FF0000
orrgb(255,0,0
) if you want red with an alpha value of .5 thenrgba(255,0,0,.5)
.Maybe not exactly what you wanted but hopefully helps.