颜色转换

HEX、RGB、HSL 颜色格式互转并实时预览。

HEX#0866ff
RGBrgb(8, 102, 255)
HSLhsl(217, 100%, 52%)

什么是颜色转换?

颜色转换工具用于在网页开发中常用的几种颜色表示法之间互相换算:HEX(十六进制颜色码,如 #FF5733)、RGB(红绿蓝三原色数值,如 rgb(255,87,51))、HSL(色相 Hue、饱和度 Saturation、明度 Lightness,如 hsl(9,100%,60%))。三种写法描述的是同一种颜色,只是参数体系不同:HEX/RGB 更贴近显示器硬件的三通道叠加原理,HSL 则更接近人对“什么颜色、多鲜艳、多亮”的直觉描述。 转换的同时通常会提供实时色块预览,方便直接看到当前数值对应的实际颜色效果,而不必凭数字想象。

为什么使用颜色转换?

常见场景:设计稿给的是 HSL 值,但 CSS 里想用更常见的 HEX 写法;想在同一色相基础上微调明度或饱和度做出深浅不同的配色(HSL 比 RGB 更容易做到这一点,因为明度是独立的一个维度);调试代码里读到的 RGB 数值,想知道对应的十六进制简写是什么方便复制进设计工具。 相比在设计软件里取色,本工具更适合快速做数值层面的精确转换和微调,尤其是需要批量生成同色系不同深浅色阶时,直接调整 HSL 的 L(明度)值比反复调整 RGB 三个通道更直观。

使用示例

HEX 转 RGB 用于 CSS 变量

输入 "#FF5733",转换后得到 rgb(255, 87, 51),可以直接用于需要分别控制透明度的场景,如写成 rgba(255, 87, 51, 0.8)。

RGB 转 HSL 便于调整明暗

输入 rgb(255, 87, 51) 转换为 hsl(9, 100%, 60%),如果想要更深的同色调颜色,只需把明度 60% 调低到 40%(色相 9 和饱和度 100% 不变),得到的新颜色会是同一“橙红色系”但更深的版本。

三位简写 HEX 展开

输入简写形式 "#0f0",工具会展开为标准六位十六进制 "#00FF00",再转换得到 rgb(0, 255, 0),即纯绿色。

使用提示

做深浅色阶时优先在 HSL 模式下只改动 L(明度)或 S(饱和度),能更可控地得到视觉上协调的同色系颜色,比直接猜 RGB 数值更省心。

常见问题

支持哪些颜色格式输入?
支持 #RGB / #RRGGBB 十六进制、rgb(r,g,b) / rgba(...) 以及 hsl(h,s%,l%) / hsla(...) 三大类常见写法,输入任意一种即可自动识别并互转。
颜色选择器和输入框可以互相联动吗?
可以,拖动颜色选择器会自动更新上方输入框及三种格式的结果;反之在输入框中修改颜色值,选择器和色块预览也会同步刷新。
数据会上传吗?
不会。颜色格式互转与预览全部在浏览器本地完成。
HEX 里的 8 位(带透明度)也支持吗?
支持,8 位 HEX(如 #FF573380)在标准六位颜色后多两位表示透明度(Alpha 通道),工具会把最后两位单独解析并换算成对应的 0~1 或百分比透明度。
RGB 转 HSL 后再转回 RGB,数值会完全一样吗?
通常一致或仅有极小的四舍五入误差,因为 RGB 与 HSL 之间是精确的数学映射关系,双向转换不会丢失颜色信息,只是计算过程中可能出现小数点后的舍入。
为什么同一个 HEX 在不同软件里显示的颜色略有差异?
这通常与显示设备的色彩管理、色域(如 sRGB 与 P3)以及屏幕本身的校色有关,属于显示层面的差异,与颜色数值的转换计算无关,本工具只做数值换算不涉及色彩管理。
能识别颜色的英文名称(如 red、skyblue)吗?
部分实现会支持 CSS 预定义的颜色关键字识别并转换为对应的 HEX/RGB 值,但这不是所有工具的标配功能,如遇不识别可先查出该颜色名对应的标准 HEX 值再输入。
HSL 里的 H、S、L 分别是什么单位?
H(色相)范围是 0~360 度,代表色环上的角度位置;S(饱和度)和 L(明度)都是 0%~100% 的百分比。

相关工具

相关教程

← 返回工具箱· 数据均在浏览器本地处理,不上传服务器。