跳到取色器

配色法則:互補色、類似色、三角配色與更多

配色法則就是在色環上按固定角度挑選色相:互補色相差 180°,類似色相差 30°,三角配色相差 120°。在 OKLCH 而不是 HSL 裡旋轉色相,顏色的亮度就能保持一致,不會有某個色相意外跳出來。

閱讀時間約 1 分鐘

什麼是配色法則

配色法則是挑選協調顏色的規則。先選一個基準色,保留它的明暗與鮮豔程度,只在色環上把色相轉動固定的角度。

角度是簡單的部分。轉動的是哪一個色環同樣重要,因為經典的 HSL 色環和 OKLCH 這類符合人眼感知的色環,在相同角度下會得到明顯不同的結果。以下範例都以中等藍色 #2a7fbf 為起點。

範例:#2a7fbf
格式值
HEX
HSL
OKLCH

互補色、分裂互補、類似色、三角配色、矩形配色、正方形配色

每一列都保留基準色的 OKLCH 亮度 0.577 和彩度 0.127,只把色相轉動表中列出的角度。轉動後的顏色若超出 sRGB,會稍微降低彩度讓它落回範圍內,所以有幾個顏色會略顯黯淡。單色配色是例外:色相不變,亮度以 0.12 為一階調整。

配色法則色相角度顏色 2顏色 3顏色 4顏色 5
互補色0°, 180°#ab6708
分裂互補0°, 150°, 210°#b85a42#907800
類似色0°, −30°, +30°#008aa7#6571c3
三角配色0°, 120°, 240°#b6566e#678626
四角配色(矩形)0°, 60°, 180°, 240°#8c64b4#ab6708#678626
正方形配色0°, 90°, 180°, 270°#a75a96#ab6708#258f58
單色配色同色相,L ±0.12、±0.24#00396f#005b98#53a4e7#7dcbff
  • 互補色:張力最強。第二個顏色只用在小面積的強調處,例如行動呼籲按鈕。
  • 分裂互補:和互補色一樣有活力,但更容易平衡,因為強調色被拆成對面色相的兩個鄰居。
  • 類似色:沉穩、協調。適合插圖和背景,但需要讓某個元素跳出來時就不太夠力。
  • 三角、四角與正方形配色:活潑但難以掌控。讓一個顏色當主角,其他顏色只占小面積。
  • 單色配色:同一個色相搭配多個亮度階層。對介面來說最保險,因為對比本來就來自亮度。

為什麼 HSL 色環配出來的顏色不平衡

設計工具裡的色環大多是 HSL:轉動色相,同時保留 HSL 的飽和度與亮度數值。但 HSL 的亮度只是一個公式,不等於眼睛看到的明暗。把金黃色在 HSL 裡轉 180°,會得到一個看起來比黃色暗得多的深藍色。

在 OKLCH 裡旋轉,感知亮度就會保持一致。下面是 #f4b400 用兩種方式旋轉的結果,並附上每個顏色的 OKLCH 亮度。

角色HSL 旋轉OKLCH LOKLCH 旋轉OKLCH L
基準色#f4b4000.808#f4b4000.808
互補色#0040f40.489#97c0ff0.802
三角配色,+120°#00f4b40.857#00dcec0.817
三角配色,+240°#b400f40.586#f299fe0.808

HSL 這組的亮度從 0.489 到 0.857 不等,藍色和紫色沉下去,薄荷綠卻亮得刺眼。OKLCH 這組則維持在 0.802 到 0.817 之間。純 RGB 原色也一樣:#ff0000、#00ff00 和 #0000ff 是完美的 HSL 三角配色,但它們的 OKLCH 亮度分別是 0.628、0.866 和 0.452。

這之中有取捨。在 sRGB 螢幕上,和這個黃色一樣亮的藍色沒辦法很鮮豔,所以 OKLCH 互補色 #97c0ff 的彩度只有 0.10,而不是 0.166。你只能在亮度一致與鮮豔度一致之間二選一;黃色和藍色無法兩者兼得。

美術課的 RYB 色環與螢幕的 RGB 色環

美術課教的色環是 RYB:以紅、黃、藍為原色,就像調顏料一樣。在這個色環上,紅色的互補色是綠色,藍色的互補色是橘色。螢幕混合的是光,所以數位工具使用 RGB 色環,紅色的互補色是青色,藍色的互補色是黃色。

兩者都沒有錯,只是回答的問題不同。RYB 沿襲繪畫傳統,RGB 和 OKLCH 則依循螢幕與人眼的運作方式。如果設計工具在你預期綠色的地方給了青色,代表它用的是 RGB 色環。

基準色RYB 互補色RGB(HSL)互補色OKLCH 互補色
#ff0000綠色#00ffff#009cb2
#0000ff橘色#ffff00#734f00
#ffff00紫色#0000ff#f3f1ff

OKLCH 這一欄呈現了亮度一致對極端顏色的影響。純藍色的互補色變成亮度同為 0.45 的深赭色,純黃色的互補色則變成亮度 0.96、接近白色的淡紫色。

把 60-30-10 法則套用到配色上

配色法則告訴你該用哪些顏色,卻沒說每種用多少。60-30-10 法則補上了這一塊:大約 60% 的面積給主色,30% 給輔助色,10% 給強調色。平均分配的話,再好的配色看起來也會很雜亂。

在介面中,60% 通常是帶有基準色相的近中性色,30% 是基準色,10% 是互補強調色。下面是用 #2a7fbf 做出、可直接複製的一組顏色。

角色占比顏色OKLCH用途
主色60%#eff6fdL 0.97, C 0.012頁面背景、卡片
輔助色30%#2a7fbfL 0.577, C 0.127頁首、連結、選取狀態
強調色10%#ab6708L 0.577, C 0.127主要行動呼籲、重點標示
文字不適用#15232fL 0.25, C 0.03主色上的內文

CSS

:root {
    --surface: #eff6fd;
    --primary: #2a7fbf;
    --accent: #ab6708;
    --text: #15232f;
}

如何檢查配色的對比

讓文字好讀的不是色相差異,而是亮度差異。上面那組互補色在色相上已經差到最遠,但 #2a7fbf 放在 #ab6708 上的 WCAG 對比值只有 1.05:1,APCA Lc 為 0:當作文字幾乎看不見。

亮度一致也有好處。在上面所有 OKLCH 配色上放白色文字,對比值都落在 4.04:1 到 4.62:1 之間。換成同樣配色的 HSL 版本,則會從 2.15:1 跳到 8.90:1。因此整組 OKLCH 配色只要一個修正就夠了:把亮度降到 0.52,彩度 0.127 時任何色相上的白色文字都能達到 4.5:1,範圍是 5.00:1 到 5.91:1。

文字背景WCAG 對比值APCA Lc結論
#2a7fbf#ab67081.05:10無法閱讀,亮度相同
#ffffff#2a7fbf4.30:1-74.8內文未達 AA
#ffffff#106ead5.45:1-82.0通過,基準色 L 0.52
#ffffff#9956005.70:1-83.3通過,強調色 L 0.52
#ab6708#eff6fd4.12:164.9僅限大字與圖示
#5c2d00#d8eafb9.42:182.5互補色拆成一深一淺

若要把兩個配色中的顏色當作文字和背景一起用,就要拉開它們的亮度:保留色相,一個往 0.35 推,另一個往 0.93 推。接著用對比檢查工具確認實際的組合;如果強調色帶有特定意義,也用色盲模擬器檢查整組調色盤。

常見問題

配色法則主要有哪幾種?

常見的配色法則有互補色(色相相差 180°)、分裂互補(150° 和 210°)、類似色(左右各 30°)、三角配色(三個色相各差 120°)、四角或矩形配色(0°、60°、180°、240°)、正方形配色(四個色相各差 90°),以及單色配色(同一色相的不同亮度階層)。

紅色的互補色是什麼?

取決於你用哪一個色環。在畫家的 RYB 色環上,紅色的互補色是綠色。在螢幕與設計工具使用的 RGB 色環上是青色,純紅色對應 #00ffff;在亮度一致的 OKLCH 中則是像 #009cb2 這樣的藍綠色。

為什麼我的互補色看起來不平衡?

大多數工具在 HSL 裡旋轉色相,而 HSL 的亮度和人眼感知並不一致。像 #f4b400 這樣的金黃色,HSL 互補色是 #0040f4,它的 OKLCH 亮度只有 0.489,黃色卻是 0.808。在 OKLCH 裡旋轉色相,兩個顏色就能一樣亮。

互補色可以拿來當文字和背景嗎?

只有在亮度差很多的情況下才行。亮度相同的互補色,例如 #2a7fbf 和 #ab6708,對比值只有 1.05:1。把一個調深、一個調淺,例如 #5c2d00 放在 #d8eafb 上,對比值就有 9.42:1。

什麼是 60-30-10 配色法則?

60-30-10 法則把設計分成約 60% 主色、30% 輔助色和 10% 強調色。搭配配色法則時,主色通常是帶點色調的中性色,輔助色是基準色,強調色則是互補色或三角配色中的顏色。

在 PickShade 中試試看

相關指南