oklch-skill

oklch-skill

熱門

適用於網頁專案的 OKLCH 色彩空間。可將 hex/rgb/hsl 轉換為 oklch、產生調色盤、檢查對比度、處理色域邊界,並搭配 Tailwind v4 設定主題。觸發關鍵字:oklch、色彩轉換、調色盤產生、對比度、色域、display p3、設計 token、色相偏移、彩度、深色模式色彩。

210星標
8分支
更新於 2026/7/10
SKILL.md
唯讀
名稱
oklch-skill
描述

適用於網頁專案的 OKLCH 色彩空間。可將 hex/rgb/hsl 轉換為 oklch、產生調色盤、檢查對比度、處理色域邊界,並搭配 Tailwind v4 設定主題。觸發關鍵字:oklch、色彩轉換、調色盤產生、對比度、色域、display p3、設計 token、色相偏移、彩度、深色模式色彩。

OKLCH 色彩

OKLCH 是一種感知均勻的色彩空間,其中的數值真正代表你以為的意義。CSS 中大多數的色彩問題——壞掉的調色盤、對比度不足、色相偏移——都源於使用了不符合人類視覺的色彩空間。OKLCH 修正了模型,讓工具能正常運作。若要互動式探索,請造訪 oklch.fyi

快速參考

類別 使用時機 參考文件
轉換 Hex/rgb/hsl 轉 oklch color-conversion.md
調色盤 產生色階、多色相、深色模式 palette-generation.md
對比度 APCA/WCAG 檢查、修正對比度不足 accessibility-contrast.md
色域與 Tailwind P3 備援、@theme 色階、色域限制 gamut-and-tailwind.md

為什麼選擇 OKLCH

  • 感知均勻。 等量的 L 階梯 = 等量的亮度。oklch(0.5 ...) 在視覺上是中間值。HSL 的 lightness: 50% 會因色相而有極大差異。
  • 穩定的色相。 HSL 的藍色在亮度改變時會偏向紫色。OKLCH 的色相在整個亮度範圍內保持恆定。
  • 獨立的彩度。 彩度是色彩鮮豔度的絕對度量,不依賴亮度。HSL 的飽和度則依賴亮度。
  • 有限的色域。 並非每個 oklch 值都能對應到可顯示的 sRGB 色彩。特定色相的高彩度值會被裁切——必須具備色域意識。

OKLCH 語法

oklch(L C H)
oklch(L C H / alpha)
通道 範圍 說明
L(亮度) 0–1 0 = 黑色,1 = 白色。感知均勻。
C(彩度) 0–~0.4 鮮豔度。0 = 灰色。最大值取決於 L 和 H。
H(色相) 0–360 色相角度(度)。
alpha 0–1 可選的透明度。使用斜線語法。
oklch(0.637 0.237 25.331)
oklch(0.8 0.05 200 / 0.5)

格式: L 和 C 使用 3 位小數,H 最多 3 位。去除尾隨的零。將 -0 格式化為 0。瀏覽器支援:Baseline 2023,全球覆蓋率 96% 以上。

關鍵閾值

規則 數值
亮/暗邊界 L > 0.6 = 亮色背景 → 使用深色文字
亮度差距(亮色背景) 當背景 L > 0.85 時,前景 L < 0.45
亮度差距(暗色背景) 當背景 L < 0.25 時,前景 L > 0.75
色相偏移閾值 調色盤階梯間色相差異 > 10° = 明顯偏移
APCA 一般文字 |Lc| >= 60 為通過,>= 75 為通過+
WCAG 2 一般文字 4.5:1 AA,7:1 AAA
對比度修正 僅調整 L——彩度影響可忽略

檢視輸出格式

一律以 Markdown 表格呈現色彩變更,包含 BeforeAfter 欄位。列出所有被變更的色彩——而非僅一部分。切勿在表格之外以獨立的「Before:」/「After:」行列出發現。

Before After
color: #3b82f6 color: oklch(0.623 0.188 259.815)
不同色相使用相同的絕對 C 使用各色相最大彩度的相同 C%
P3 色彩沒有 sRGB 備援 @media (color-gamut: p3) 包覆

這樣能讓回饋易於掃讀且方便 diff。每一列都是開發者可獨立處理的完整變更。

常見錯誤

問題 修正
新程式碼中使用 Hex/rgb/hsl 色彩 轉換為 oklch()
HSL 調色盤階梯有色相偏移 使用固定的 oklch 色相重建
對比度不足(使用 APCA 檢查前景與其背景) 調整 oklch L 通道,保持 C 和 H
高彩度但未檢查色域 限制為 sRGB 中該 L/H 的最大彩度
不同色相使用相同的絕對 C 使用相同的 C%(最大值的百分比)以獲得一致的鮮豔度
P3 色彩沒有 sRGB 備援 加入 @media (color-gamut: p3) 模式
深色模式使用手動挑選的色彩 透過反轉 L 映射從亮色調色盤推導
Tailwind v4 @theme 中使用 Hex 轉換為 oklch 數值
使用逗號語法的 Alpha 使用斜線:oklch(L C H / alpha)

參考檔案

  • color-conversion.md — 支援的格式、轉換範例、大量轉換規則、應保留的內容
  • palette-generation.md — 色階慣例、產生演算法、多色相調色盤、深色模式、為何不用 HSL
  • accessibility-contrast.md — APCA 和 WCAG 2 閾值、使用 L 修正對比度、亮度差距指南、色相偏移偵測
  • gamut-and-tailwind.md — sRGB 與 P3、色域限制、CSS 備援模式、Tailwind v4 @theme 與遷移