颜色混合器 · 三色彩空间
颜色混合器 / 调色器
在 sRGB、OKLab、OKLCH 三种色彩空间中以任意比例混合两色。并排展示的对比带让你立刻看清:OKLab 和 OKLCH 为何能避开 sRGB 混合时的"灰中点"。
A · 50%
#3B82F6
混合结果
#D45FC2
B · 50%
#F97316
50% / 50%
纯 A纯 B
三种色彩空间对比
三条对比带使用相同的 A、B。中段就是 sRGB 饱和度下降、而 OKLab / OKLCH 保持纯净的位置——这就是常说的"灰中点"。
sRGB
OKLab
OKLCH ★
我们的看法
别再用 sRGB 混色了。这个算法自 1996 年起就错了。
当你在 sRGB 里按 R、G、B 通道求平均时,你是在对三个与人眼亮度感知毫无直接关联的数字求算术平均。结果总是比你预期暗——一对鲜艳的蓝黄在 50% 处会变成一种两端色彩里都不存在的脏灰。
OKLab 在感知均匀的空间里插值。同样的 50% 混合在 OKLab 中饱和度不掉:蓝 + 黄走过的是干净的青绿,而不是灰。OKLCH 进一步沿最短弧插值色相,所以"红 + 粉"留在暖色相内,不会绕道经过青色。
色相混合(冷暖配对、品牌色过渡)用 OKLCH;当一端接近中性灰且要避免色相伪影时用 OKLab;只有当你需要匹配某个已经在 sRGB 里混合的系统时(比如模拟旧版 CSS 渐变在不支持的浏览器里的渲染),才退回 sRGB。
三种空间,三种结果
相同的 A、B、相同的比例——数学不同。
sRGB
按 R、G、B 原始通道线性插值。快但感知上是错的。50% 混合通常比两端任意一方都暗、都灰。
OKLab
在感知均匀的笛卡尔空间里插值。"平滑通过任意中点"的最佳选择——饱和度不掉,亮度等于两端平均。
OKLCH
与 OKLab 类似,但有显式色相控制。色相沿最短弧插值,冷暖色之间不会跑出色环错误的一侧。混合任务的默认推荐。
常见问题
这个混合器是免费的吗?
完全免费,无需注册,全部在浏览器本地运行。
默认该用哪种模式?
OKLCH。它产生最干净的混合结果,与 CSS 渐变里带 "in oklch" 提示的插值一致。只有当你确实要匹配旧行为时,才切回 sRGB。
为什么 OKLCH 混合有时和 OKLab 看起来不一样?
OKLab 在笛卡尔空间沿直线插值;OKLCH 在圆柱空间沿弧插值。色相相近时二者几乎相同;色相相差很大(如橙和蓝),OKLCH 走色环最短路径,中段感知上的冷暖可能与 OKLab 不同。
我的混合为什么经常变灰?
因为你在 sRGB 里混。改用 OKLCH——它在中点保持饱和度,混合不会发灰。如果连 OKLCH 都接近灰,说明你的两色在色环上互补,"中段变灰"是预期。
OKLCH 和 Photoshop 的混合模式一样吗?
不一样。Photoshop 的"正常"模式本质上是 sRGB alpha 合成;其他模式(正片叠底、滤色、叠加等)实现的是特定的摄影运算,不是感知均匀的混合。OKLCH 更接近日常语义里的"把这两个色平均一下"。
能分享混合结果吗?
可以。分享按钮把两色、比例、模式编码进 URL hash,打开链接即可重现同样的混合。