返回博客列表
📖 工具教程 管理员 · · 4 分钟 · 14 浏览

颜色代码转换指南:HEX、RGB、HSL 互转的终极教程

全面了解 HEX、RGB、HSL 三种颜色表示法,掌握它们之间的转换原理和公式。学习在实际项目中使用颜色代码转换提升设计和开发效率。

颜色表示法概览

在网页设计和开发中,颜色有多种表示方式。最常见的三种是:

  • HEX(十六进制):如 #FF5733
  • RGB(红绿蓝):如 rgb(255, 87, 51)
  • HSL(色相-饱和度-亮度):如 hsl(9, 100%, 60%)

每种表示法都有其适用场景。理解它们之间的转换关系,能让你在设计时更加得心应手。

三种颜色模型详解

HEX 十六进制

最广泛使用的 Web 颜色格式。以 # 开头,后跟 6 位十六进制数(或简写的 3 位)。每两位代表红、绿、蓝通道的值(00-FF)。

# FF5733 → 红色=FF(255), 绿色=57(87), 蓝色=33(51)

RGB 红绿蓝

最直观的颜色模型,直接指定红、绿、蓝三个通道的数值(0-255)。CSS 中还可以加上 alpha 透明度通道,写作 rgba(255, 87, 51, 0.5)

HSL 色相-饱和度-亮度

对设计师最友好的颜色模型:

  • 色相(Hue):0-360°,表示在色轮上的位置
  • 饱和度(Saturation):0-100%,颜色的纯度
  • 亮度(Lightness):0-100%,颜色的明暗程度

HSL 的优势在于:想要"同色系但更亮一点"时,只需调整亮度值即可。

转换公式

HEX → RGB

R = parseInt(HEX[1..2], 16)
G = parseInt(HEX[3..4], 16)
B = parseInt(HEX[5..6], 16)

RGB → HSL

R' = R/255, G' = G/255, B' = B/255
Cmax = max(R', G', B')
Cmin = min(R', G', B')
Δ = Cmax - Cmin

H = 60° × (不同情况公式)
S = Δ / (1 - |2L - 1|)
L = (Cmax + Cmin) / 2

实际应用建议

  1. CSS 变量:使用 HSL 定义主题色,方便通过调整亮度值生成变体
  2. 设计系统:用 HSL 统一管理色调,修改色相即可全局换肤
  3. 可访问性:通过亮度值判断前景色和背景色的对比度
  4. 渐变色:HSL 可以创建更自然的渐变过渡
  5. 颜色代码转换看似基础,但在实际开发中却是每天都可能用到的技能。

更多文章
14 浏览 · 4 分钟

🔗 相关工具

试试这些与此文章相关的实用工具