Skip to content

最近很火的 OKLCH 开发配色方案

youxiaohanpian
Published date:

📝 背景聊天

和朋友聊天,其最近找到了新工作,在一家 ToB 公司,聊到用 Figma Token 做配色方案,给我提到了 OKLCH配色之前参考wcag,和apca,于是去和G老师请教,补充相关知识并总结如下:

oklch 是一个新一代的 颜色表示法 ,在设计和前端开发里很有潜力,它是为了解决传统颜色模式(比如 rgbhsl )不够好用、不够直观的问题。


🔍 什么是 OKLCH?

推荐看这个网站,会有完全不同的理解: OKLCH in CSS: why we moved from RGB and HSL—Martian Chronicles, Evil Martians’ team blog Figma Token 结合 OKLCH:Update 1: Tokens, variables, and styles – Figma Learn - Help Center

OKLCH 是一种相对先进且更符合人类感知的颜色空间,由这几个维度组成:

color: oklch(75% 0.2 240);

这行代码的意思是:


🔥 为什么会喜欢 OKLCH?

✅ 更符合人眼感知

比如,在 rgb 模式里加 10 的红,颜色变化肉眼感知不一定线性;但在 oklch 里改变数值, 变化更直观 ,非常适合调节主题色、设计系统等。

✅ 更容易做暗色/亮色主题切换

调节亮度( L )就能实现色调保持一致的前提下切暗或提亮,太方便了!

✅ CSS 原生支持(渐进中)

现代浏览器 中(如 Chrome 111+、Safari、Firefox),已开始支持,未来可能是主流。


🎨 举个实际例子(UI 设计)

你可能想要一个主色调,配出:


🛠️ 如何在项目中使用?


🍉 总结一句话:

OKLCH 是为「设计师 + 前端」打造的新一代色彩表示法,精准好调,未来可期。

✅ WCAG / APCA vs OKLCH:关系解读

👉 简单来说: OKLCH 用来调色,APCA/WCAG 用来检测结果

推荐工具

📎 展望

🍉 脑洞以后想做一个西瓜瓜田的留言板,于是代入“西瓜主题”配色参考

oklch 格式写,清新自然,还带点「请我吃西瓜」的趣味性:


🍉 西瓜主题色板(OKLCH 格式)

名称说明OKLCH 值颜色预览
🍉 主西瓜红主色调/按钮颜色oklch(0.65 0.25 20)$\small\color{#FFF}\colorbox{#ff1f4a}{主西瓜红}$
🍈 西瓜皮绿次要按钮/强调边框oklch(0.62 0.18 150)$\small\color{#FFF}\colorbox{#00a245}{西瓜皮绿}$
🍉 浅瓜红背景淡红色背景/卡片底色oklch(0.95 0.05 20)$\small\color{#ff1f4a}\colorbox{#ffe3e1}{🍉 浅瓜红背景}$
🍈 瓜皮绿 hoverhover 时的微调色oklch(0.65 0.20 160)$\small\color{#fff}\colorbox{#00ad69}{🍈 瓜皮绿 hover}$
🍉 瓜籽黑字体/深色强调oklch(0.2 0.01 280)$\small\color{#fff}\colorbox{#15161b}{🍉 瓜籽黑}$
🍧 白西瓜冰字体/背景(白色偏粉)oklch(0.98 0.01 20)$\small\color{#ff1f4a}\colorbox{#fff6f6}{🍧 白西瓜冰}$

🎯 使用建议:

:root {
  --color-primary: oklch(0.65 0.25 20); /* 主西瓜红 */
  --color-accent: oklch(0.62 0.18 150); /* 西瓜皮绿 */
  --color-bg: oklch(0.95 0.05 20);       /* 背景淡红 */
  --color-hover: oklch(0.65 0.20 160);   /* hover 色 */
  --color-text: oklch(0.2 0.01 280);     /* 瓜籽黑 */
  --color-white: oklch(0.98 0.01 20);    /* 白西瓜冰 */
}

🌟 高级玩法(以后这样调色):


我还可以:

✅ 划个重点:

WCAG 和 APCA 不如 OKLCH 吗?

这是三者在色彩系统和可访问性方面的对比——各有用处,不是“谁更高级”,而是看用在什么场景。


🎨 三者简要比较:

Column 1Column 2Column 3Column 4
名称作用评价使用建议
WCAG 2.x Contrast Ratio老标准,判断文字对比度(如 4.5:1)✅ 老牌稳定
❌ 不考虑感知差异可以继续用于标准合规,但视觉感觉没那么精准
APCA (新一代对比算法)更准确模拟人眼感知的亮度对比✅ 先进、感知接近真实视觉
❌ 有些实现麻烦如果你对文字可读性特别在意,可作为补充参考
OKLCH (颜色空间)颜色生成与调色更符合感知规律✅ 非常适合 UI 设计
✅ 明暗、鲜艳、色相可独立调控推荐用这个来构建配色系统

✴️ 为什么选 OKLCH 做主题色:


✨ 宇宙黑 + 能量橙(OKLCH)风格参考

Column 1Column 2Column 3Column 4
名称用法OKLCH 值说明
$\small\color{#f6f8ff}\colorbox{#090b0f}{深宇宙黑}$背景主色oklch(0.15 0.01 270)不是死黑,有点温度
$\small\color{#fff}\colorbox{#ff5c00}{发光橙}$主按钮/强调色oklch(0.7 0.25 40)很「烧」但不辣眼
$\small\color{#fff}\colorbox{#c85b32}{次橙(柔和)}$hover/辅助强调oklch(0.6 0.15 40)稍暗,避免过度干扰
银灰文字主文案色oklch(0.85 0.02 270)读起来舒服
弱提示灰辅助文字oklch(0.7 0.01 270)提示不抢眼
行动白反差按钮色oklch(0.98 0.01 270)配深背景对比强烈

🧪 提升体验:


未来考虑把这套宇宙黑橙配色用 OKLCH 完整搭出来,写进 Tailwind 配置⚙️

更进阶一点的话,再做一个主题切换按钮,从西瓜主题 ➡️ 宇宙主题 随意搭配🍉🚀

💡 > 欢迎分享文章,或是 来信 与我交流

Previous
家庭自制杀虫(更新进度)
Next
分镜制作的AI工具、工作流推荐和开源资源