← 全部工具

HEX 转 RGB 颜色转换器

在浏览器中即时将 HEX 颜色代码转换为 RGB 并可互转,查看实时色块,并通过清晰示例了解每种格式的原理。

HEX 与 RGB:书写同一种颜色的两种方式

你在屏幕上看到的每一种颜色,都是由三束光混合而成:红、绿、蓝。把这三者全都调到最亮,你得到白色;把它们全都关掉,你得到黑色。HEX 和 RGB 不过是描述这三个通道各自应该多亮的两种记法。它们指向完全相同的颜色,所以一个好的转换器只是在这两套书写系统之间翻译,而从不改变实际的色调。这正是这个工具所做的事,全程都在你的浏览器中完成,同时还给你显示一个实时色块,让你能用自己的眼睛确认结果。

红、绿、蓝三个光通道混合成一个发光色块,演示 HEX 到 RGB 的转换
屏幕上的每一种颜色都由不同强度的红、绿、蓝光构成。

如何读懂一个十六进制代码

一个 HEX 颜色看起来像 #1E90FF。井号只是标记起始;它后面的六个字符是三对,按 #RRGGBB 的模式书写。第一对是红,第二对是绿,第三对是蓝。每一对都是一个以十六进制(也就是十六进制,base 16)书写的数字,其中数字从 0-9 开始,然后用 A、B、C、D、E、F 代表 10 到 15。一对能容纳的值从 00(通道完全关闭)到 FF(完全开启)。换成普通十进制,这个范围正好是 0 到 255,和 RGB 使用的尺度一样。由于每个通道有 256 个可能的级别,六位形式能描述 16,777,216 种不同的颜色。

双向转换,附一个实例

从 HEX 转到 RGB,把代码拆成三对,再把每一对从 base 16 转成普通十进制。拿 #1E90FF 来说。红色那一对是 1E:也就是 1 乘以 16,加上 14(E),等于 30。绿色那一对 90 是 9 乘以 16,加上 0,等于 144。蓝色那一对 FF 是 15 乘以 16,加上 15,等于 255。于是 #1E90FF 变成 rgb(30, 144, 255) —— 那个熟悉的道奇蓝(dodger blue)。

反方向是同一个过程倒过来。取每个 RGB 数字,把它写成两位十六进制数。纯红 rgb(255, 0, 0) 得出 FF0000,拼成 #FF0000。有一点值得记住:如果一个值小于 16,你仍然需要两位数字,所以 5 要写成 05 而不只是 5。转换器会替你处理这个补零,但人们手算时常常在这里出错。

一个色块旁边是发光的红、绿、蓝通道滑块,显示从零到 255 的 RGB 值
每个通道从 0 滑到 255,直接对应 00 到 FF 的十六进制范围。

每种格式各用在哪里

HEX 是 Web 的日常语言。CSS、HTML 以及你写的大多数代码都倾向于使用十六进制代码,因为它们紧凑、易于复制。RGB 则往往出现在设计和图像工具里 —— Figma、Photoshop、Sketch 和 Illustrator 通常以 0-255 的范围显示滑块或输入框,屏幕录制或视频应用也常常期望 RGB。所以你经常要从样式表里抓一个十六进制代码,又需要它的 RGB 形式来填进设计面板,反之亦然。正是这个来回,让一个转换器变得顺手。如果你需要构建一整套相互搭配的色调,而不是翻译单个颜色,我们的配色方案生成器是更好的起点,你也会在开发者工具下找到更多类似的实用工具。

Alpha、不透明度与 HSL

两种记法都有一个加入透明度的扩展形式。RGB 变成 rgba(30, 144, 255, 0.5),其中第四个值是 alpha —— 0 是完全透明,1 是完全不透明。HEX 为同样的目的添加第四对,给出一个八位的 #RRGGBBAA 代码;例如 80 大约是 50% 的不透明度。一些转换器还提供 HSL(色相、饱和度、亮度),它以接近人类的方式描述颜色 —— 在色轮上挑一个色相,然后调节它的鲜艳度和明度。HSL 是一种不同的思维模型,而非不同的调色板,所以当你想把一种颜色调得更浅或更柔和、又不想同时摆弄三个独立的数字时,它会更直观。

常见问题

井号是十六进制代码的一部分吗?

井号是一个标记,告诉 CSS 和设计工具你给的是一个十六进制颜色。颜色本身是它后面的六个字符。大多数工具接受带或不带井号的代码,并会替你把它加回去。

3 位和 6 位十六进制代码有什么区别?

3 位代码是一种简写,每位数字翻倍,所以 #1AF 表示 #11AAFF。它只能表示 4,096 种颜色,而完整的 6 位形式能表示超过 1600 万种。

为什么我的十六进制代码有八个字符?

一个 8 位十六进制代码为 alpha(也就是透明度)添加了第四对。前六个字符仍然是红、绿、蓝,最后两位设定不透明度,从 00(不可见)到 FF(不透明)。

十六进制代码区分大小写吗?

不区分。#1e90ff 和 #1E90FF 描述的是完全相同的颜色。十六进制字母在大写或小写下作用相同,所以用你团队偏好的那种即可。

HEX 和 RGB 在屏幕上会显得不同吗?

不会。当它们描述相同的通道值时,就是完全相同的颜色。任何可见的差异都来自一个笔误,或来自其中一个代码包含了另一个省略掉的透明度。

一个标准的十六进制代码能显示多少种颜色?

一个 6 位十六进制代码为三个通道各提供 256 个级别,相乘得出 16,777,216 种可能的颜色。