十六进制颜色到等效的 RGBa,允许透明度

Posted

技术标签:

【中文标题】十六进制颜色到等效的 RGBa,允许透明度【英文标题】:HEX color to equivalent RGBa, allowing for transparency 【发布时间】:2013-10-01 20:32:18 【问题描述】:

对于给定的十六进制颜色代码,如何将其转换为 a=0.97 且渲染颜色与初始十六进制颜色相同的rbga 颜色代码?

换句话说,如果我有#ccc,我需要一个等效的rgba,它仍然呈现与#ccc 相同的颜色,但具有透明度。

【问题讨论】:

半透明元素的感知颜色取决于它的顶部:颜色、多种颜色、图像等。如果其下方元素的背景颜色是恒定的,see here 【参考方案1】:

要转换为 rgba,您必须这样做:

1- 将您的十六进制颜色代码分成 3 个部分

cccccc => cc(r)|cc(g)|cc(b)

2- 对于每个部分,使用 parseInt 将其转换为 int

r = parseInt("cc", 16)
g = parseInt("cc", 16)
b = parseInt("cc", 16)

3- 将所需的 alpha 值添加到最终的 rgba 代码中

【讨论】:

以上是关于十六进制颜色到等效的 RGBa,允许透明度的主要内容,如果未能解决你的问题,请参考以下文章

CSS颜色样式

CSS3 rgba用法

rgba透明的兼容处理

SASS:将 RGBa 转换回十六进制?

h5颜色

在css中设置背景不透明度[重复]