如何将十六进制颜色转换为 RGB
- 在十六进制颜色代码输入框中输入或粘贴颜色代码(带不带
#均可),或点击色块选取颜色。 - 查看
rgb()格式的结果,滑块上会显示红、绿、蓝三个通道的值,同时给出 HSL、HSV 和 CMYK。 - 一键复制任意格式。格式旁边的公式展示了每两位十六进制数字是如何换算成 0 到 255 之间的数值的。
十六进制转 RGB 公式
十六进制颜色代码是用十六进制书写的三个字节:#RRGGBB。每两位数字代表一个通道,取值从 00(0)到 FF(255)。换算时,把第一位乘以 16 再加上第二位,其中 A = 10,B = 11,C = 12,D = 13,E = 14,F = 15。以 #7C3AED 为例:
- 红色:
7C= 7 × 16 + 12 = 124 - 绿色:
3A= 3 × 16 + 10 = 58 - 蓝色:
ED= 14 × 16 + 13 = 237
所以 #7C3AED = rgb(124, 58, 237)。
简写与带透明度的十六进制颜色代码
3 位代码是一种简写,每一位数字都要重复一次:#F80 = #FF8800 = rgb(255, 136, 0)。8 位代码在末尾增加了一个表示不透明度的 alpha 字节:在 #7C3AED80 中,最后两位 80 = 128,而 128 ÷ 255 ≈ 0.5,所以它等于 rgba(124, 58, 237, 0.5)。4 位的 #RGBA 写法同理。
常用十六进制颜色代码与 RGB 值对照表
| 颜色 | 十六进制 | RGB |
|---|---|---|
| 白色 | #FFFFFF | rgb(255, 255, 255) |
| 黑色 | #000000 | rgb(0, 0, 0) |
| 红色 | #FF0000 | rgb(255, 0, 0) |
| 亮绿色(lime) | #00FF00 | rgb(0, 255, 0) |
| 蓝色 | #0000FF | rgb(0, 0, 255) |
| 黄色 | #FFFF00 | rgb(255, 255, 0) |
| 橙色 | #FFA500 | rgb(255, 165, 0) |
| 灰色 | #808080 | rgb(128, 128, 128) |
| 海军蓝 | #000080 | rgb(0, 0, 128) |
| 紫色 | #800080 | rgb(128, 0, 128) |
| 蓝绿色(teal) | #008080 | rgb(0, 128, 128) |
常见问题
如何手动将十六进制颜色转换为 RGB?
把颜色代码拆成三组,每组两位,分别从十六进制换算:第一位 × 16 + 第二位。以 #1E90FF 为例:1E = 30,90 = 144,FF = 255,所以这个颜色是 rgb(30, 144, 255)。
#F80 这样的 3 位十六进制颜色代码是什么意思?
它是 6 位代码的简写,每一位数字都要重复一次:#F80 = #FF8800 = rgb(255, 136, 0)。只有每组两位数字都相同的颜色才能简写。
如何用 JavaScript 或 Python 将十六进制转换为 RGB?
JavaScript:对于 #RRGGBB 格式的代码,可以用 [1, 3, 5].map((i) => parseInt(hex.slice(i, i + 2), 16))。Python:tuple(int(h[i:i + 2], 16) for i in (1, 3, 5))。在 CSS 中则无需转换,两种写法都可以直接使用。
在 CSS 中用十六进制还是 RGB 更好?
两者描述的颜色完全相同。十六进制更简短,在设计工具中很常见;rgb() 更易读、易调整,用 rgba() 表示透明度也一目了然。现代浏览器同样支持带 alpha 的 8 位十六进制代码。