平面設計

白色色碼整理:暖白、冷白、米白怎麼挑,附 4 組搭配色碼

#FFFFFF 和 #FFFFF0 只差最後一位數,換算成 RGB 是藍色少了 15,白色就從純白變成了象牙白。

這種差距小到很容易被忽略,真正要選的時候卻不好拿捏。搜尋米白、乳白、暖白的色碼,每個網站給的答案都不一樣;背景從純白換成偏黃的白,原本讀得清楚的灰色文字,也可能悄悄掉到可讀性門檻以下。

要避開這些狀況,得先弄懂白色在色碼裡是怎麼組成的,因為任何一個數字動了一點,整張畫面的氣氛就會跟著變。

純白在 HEX、RGB、HSL 與 CMYK 的寫法

純白只有一種顏色,卻有好幾種寫法,網頁、設計軟體、印刷稿各用各的。W3C 的《CSS Color Module Level 4》規格裡,white 這個色名等於 #ffffff,也等於 RGB 的 255、255、255,三個通道全部拉到最高。下面這張表是同一個純白在不同場合的標法,可以直接複製。

寫法純白的標示用在哪裡
HEX 六位#FFFFFF網頁、多數設計軟體的色碼欄
HEX 三位簡寫#FFF網頁 CSS,每位數重複一次後展開
CSS 色名white網頁 CSS,直接寫英文單字
RGBrgb(255 255 255)網頁與螢幕類設計稿
HSLhsl(0 0% 100%)網頁 CSS,用色相、飽和度、明度描述
CMYK0%、0%、0%、0%印刷稿,四色都不上墨
八位 HEX 半透明白#FFFFFF80網頁 CSS,最後兩位是透明度

三位簡寫的規則是每個數字重複一次,規格裡的範例是 #123 展開成 #112233,所以 #FFF 就等於 #FFFFFF。簡寫每個通道只有 16 種數值,一共能表達 4,096 種顏色,六位寫法則有約 1,700 萬種,因此簡寫只適合像純白這種剛好每位數字都重複的顏色,其他顏色硬縮成三位通常會跑色。

HSL 的寫法比較特別,明度(lightness)設成 100% 就是白色,這時候色相和飽和度填任何數字結果都一樣。八位 HEX 則是在六位後面多加一組透明度,80 約等於 50% 不透明,用在疊在照片上的半透明白色色塊很方便。

CMYK 的白色寫成 0/0/0/0,意思是四種油墨都不上,露出來的就是紙張本身。這是印刷的通用慣例,實際轉換的結果還是會隨色彩描述檔(ICC profile)略有差異,所以這裡只列純白,其他色碼的 CMYK 不逐一換算。這幾種寫法標示的都是同一個純白,差別只在各自的使用場合。

暖白與冷白的差別在 RGB 被調低的那個數字

白色本身沒有色偏,RGB 三個通道都是 255 的時候,畫面上沒有任何一種顏色比較突出。暖白與冷白其實是把其中一個通道往下拉了一點,拉低的通道不同,偏向的方向就不同。

藍色被拉低,畫面少了藍色,整體就偏黃,看起來比較暖;紅色被拉低,畫面少了紅色,就偏向藍綠,看起來比較冷;三個數字一樣,則是不偏任何方向的中性白。學會這個判讀方式,之後看到任何一組白色色碼,都能自己判斷它偏哪一邊。

網頁色碼的色偏,取決於被拉低的通道

拿規格裡的幾個命名顏色來看最清楚。象牙白(ivory)是 #FFFFF0,RGB 為 255、255、240,只有藍色少了 15,所以偏黃。愛麗絲藍(aliceblue)是 #F0F8FF,RGB 為 240、248、255,紅色少 15、綠色少 7,紅色被拉得最低,所以偏藍。白煙(whitesmoke)是 #F5F5F5,三個數字都是 245,沒有色偏,只是比純白暗一階。

每一個例子都只要看「哪個數字比 255 低、低多少」,就能判斷方向和強弱,被拉低的差距越大,色偏就越明顯。

白色的色偏看 RGB 哪個通道被拉低:ivory 藍色少 15 偏黃屬暖白,aliceblue 紅色最低偏藍屬冷白,whitesmoke 三值相同是中性白
純白三個通道都是 255,藍色被拉低就偏黃成暖白,紅色被拉得最低就偏藍成冷白,三個數字一樣則是不偏任何方向的中性白。

另外要知道,螢幕上並沒有絕對的白。#FFFFFF 只是「這台螢幕能發出的最亮的白」,它實際看起來偏什麼顏色,取決於螢幕設定的白點。W3C 規格把 sRGB 定為 CSS 的預設色彩空間,而 sRGB 規定的白點是 D65,色度座標為 x=0.3127、y=0.3290,對應的色溫約 6504K,白色亮度為 80 cd/m²。所以同一組色碼在不同螢幕上,看起來會有些許出入,這也是為什麼挑白色必須在目標裝置上實際看過。

燈光標示的暖白與冷白用的是色溫 K 值

搜尋暖白、冷白的人裡,有一部分其實是在找燈泡。燈光的暖白與冷白,是用 K(克耳文,Kelvin)標示的色溫,網頁色碼的暖白冷白只是 RGB 數字之間的相對偏向,兩個系統不能互相換算。

美國 ENERGY STAR 的 LED 燈泡選購指南用 K 值標示光色,K 值越低,光越暖、越偏黃;K 值越高,光越冷、越偏藍。指南上的色溫軸從 2200K 標到 6500K,2200K 到 3000K 一帶屬於暖白光,最冷的 5000K 到 6500K 則稱為日光,指南形容這段光色就像正午的藍天。

前面提到 sRGB 的白點約 6504K,放到燈光的語境裡,已經落在偏冷、接近日光的一端,換句話說,以燈光的標準來看,螢幕上的純白並不算暖。網頁的色碼欄沒有地方填 K 值,燈泡包裝上的色溫也沒辦法拿來挑 HEX,需要暖白就直接從下一節的色碼表挑。

暖白色碼分成偏黃、偏粉橘與偏米褐三類

暖白在 RGB 上的規律大致固定,多半是藍色被拉得最低,綠色次之,紅色幾乎不動。W3C 規格命名顏色表裡屬於暖白的色名,可以依色偏分成偏黃、偏粉橘、偏米褐三組。表格裡的中文譯名是常見叫法,各站寫法不完全一致,溝通時以英文色名或 HEX 為準。

暖白色碼依色偏分成偏黃、偏粉橘、偏米褐三類,從 ivory #FFFFF0 到暖白下限 antiquewhite #FAEBD7,附 HEX 與 RGB 數值
暖白的紅色幾乎不動,靠綠、藍往下拉出色偏,骨董白 antiquewhite 是暖白的下限,papayawhip 與 blanchedalmond 已偏向杏色、不再算白。

象牙白、花白與玉米絲色等偏黃暖白

這是藍色通道被拉低最多的一組,也是最常拿來當「溫和一點的白底」的選擇。

英文色名常見中文譯名HEXRGB色偏說明
ivory象牙白#FFFFF0255 255 240只有藍色少 15,最接近純白
floralwhite花白#FFFAF0255 250 240綠色少 5、藍色少 15,黃裡帶一點暖
cornsilk玉米絲色#FFF8DC255 248 220藍色少 35,已經看得出米色
beige米色#F5F5DC245 245 220紅綠各少 10、藍色少 35,偏黃

四個顏色的藍色通道依序是 240、240、220、220。ivory 和純白只差 15,並排時差異很小,很適合直接當整頁的大面積背景。floralwhite 的綠色也略低,比 ivory 多一點橘調,用法相同。cornsilk 和 beige 是這組裡最黃的兩個,已經是「看得出是米色」的程度,放在整頁背景會有明顯的色調,比較適合用在卡片、側欄或區塊底色這類小面積位置,讓它和純白底形成層次。

貝殼白、亞麻色與舊蕾絲色等偏粉橘暖白

綠色與藍色同時被輕微拉低,帶一點肉粉或奶茶感的暖白,歸在這一組。

英文色名常見中文譯名HEXRGB色偏說明
seashell貝殼白#FFF5EE255 245 238綠少 10、藍少 17,淡淡的粉橘
oldlace舊蕾絲色#FDF5E6253 245 230紅少 2、綠少 10、藍少 25,偏奶油
linen亞麻色#FAF0E6250 240 230紅少 5、綠少 15、藍少 25,奶茶感
snow雪白#FFFAFA255 250 250綠藍各少 5,淡淡的粉
lavenderblush薰衣草紫紅#FFF0F5255 240 245綠少 15、藍少 10,偏粉

這組適合用在需要柔和、不想要死白,又不想帶太多黃色的版面。oldlace 和 linen 的藍色通道降得比較多,暖感也比較明顯,適合整頁背景或大面積區塊。seashell 的藍色只少 17,暖感介於純白與這兩個顏色之間,是比較保守的選擇。

snow 和 lavenderblush 的特點是綠、藍只被輕微拉低,而且藍色幾乎不比綠色低(snow 綠藍相同,lavenderblush 的藍色還比綠色高 5),所以色偏落在粉紅,而不是黃。這兩個顏色用在需要一點柔和氣氛的小區塊,比整頁鋪滿更好控制。

偏米褐的骨董白是暖白的下限

骨董白(antiquewhite)是 #FAEBD7,RGB 為 250、235、215,紅色少 5、綠色少 20、藍色少 40。它比前面幾組都深一檔,這裡把它當作暖白的下限,再往下,色彩就已經不算白了。

規格裡另外兩個相近的 papayawhip(#FFEFD5,255 239 213)與 blanchedalmond(#FFEBCD,255 235 205),藍色通道已降到 213 與 205,視覺上偏向淺膚色或杏色,不再歸在白色之列。

知道這條界線,就不用去猜「米白最深可以多深」。antiquewhite 還能勉強當背景使用,但中灰色文字放在它上面,對比會掉到 4.5 以下,文字顏色要挑深一點。

冷白色碼以藍調為主,另有綠調與中性白

冷白和暖白剛好對稱,暖白是藍色通道往下掉,冷白則是紅色在三個通道裡最低,或與另一個通道並列最低。W3C 規格的命名顏色裡,冷白以藍調居多,另有兩個偏綠的,以及三值相同的中性白。

冷白色碼分成偏藍的 ghostwhite、aliceblue、azure,偏綠的 mintcream、honeydew,以及三值相同的中性白 whitesmoke
冷白是紅色通道最低或並列最低,藍調三個、綠調兩個,whitesmoke 則是沒有色偏的中性白,再往下的 gainsboro 與 lightgray 已經是淺灰。

愛麗絲藍與幽靈白等偏藍冷白

英文色名常見中文譯名HEXRGB色偏說明
ghostwhite幽靈白#F8F8FF248 248 255紅綠各少 7,色偏最淡
aliceblue愛麗絲藍#F0F8FF240 248 255紅少 15、綠少 7,藍調明顯
azure蔚藍色#F0FFFF240 255 255只有紅少 15,偏青

ghostwhite 的紅、綠只各低 7,是這組裡最安全的一檔,拿來當整頁背景不容易出錯。aliceblue 紅色少 15,藍調一目了然,更適合當卡片或表單底色,和純白或 ghostwhite 的頁面形成層次。azure 的綠、藍都滿格,只有紅色低,所以色偏落在青綠,放在整頁背景會有很強烈的冷調,建議只用在小區塊。

薄荷奶油色與蜜瓜色等偏綠冷白

英文色名常見中文譯名HEXRGB色偏說明
mintcream薄荷奶油色#F5FFFA245 255 250紅少 10、藍少 5,綠調很淡
honeydew蜜瓜色#F0FFF0240 255 240紅藍各少 15,綠調比 mintcream 更明顯

綠調冷白是容易被忽略的一組,色偏很淡,適合需要乾淨、又帶一點自然感的背景。mintcream 偏向青綠,honeydew 則偏向嫩綠。

綠調的白不像藍調那麼常見,建議在定案之前,先在實際使用的螢幕上看過,不要只看色碼表就決定。

白煙等 R、G、B 三值相同的中性白

三個數字一樣就沒有色偏。whitesmoke(#F5F5F5,245、245、245)是最常見的「比純白低一階」的中性選擇。

中性白搭配什麼顏色都不會因為底色而走偏,這是它最大的好處,代價則是少了氣氛,畫面看起來比較中規中矩。

再往下的 gainsboro(#DCDCDC,220)與 lightgray(#D3D3D3,211)已經是淺灰,不再算白,放在這裡只當作白與灰的分界。從 245 掉到 220,看起來就已經是「換成灰色」了。

米白、乳白、珍珠白這類中文色名沒有標準色碼

台灣讀者搜尋時,往往直接打中文色名。問題是 CSS 規格只定義英文色名,「米白」「乳白」「珍珠白」根本不在規格裡,所以各站給的色碼不一致,並不是誰錯了,而是這些名字本來就沒有標準值。

要避免各說各話,做法很單純,挑一個 HEX 寫進團隊的色票,不要靠色名來溝通。

中文白色名稱與最接近的 CSS 色名

下面這張表把常見的中文白色名稱,對照到 W3C 規格有定義的英文色名。有標準的直接給色碼,沒有標準的就明說沒有。

中文色名最接近的 CSS 色名HEX狀態
象牙白ivory#FFFFF0規格有定義
花白floralwhite#FFFAF0規格有定義
雪白snow#FFFAFA規格有定義
米色beige#F5F5DC規格有定義
亞麻色linen#FAF0E6規格有定義
米白無無沒有標準值
乳白無無沒有標準值
珍珠白無無沒有標準值

沒有標準值的三個名字,可以從相近的 CSS 色名起步,再自己微調。以下是本文建議的起點,不是標準答案:

  • 乳白:可從 ivory 或 floralwhite 起試,這兩個都偏奶黃,暖感剛好。
  • 米白:可在 oldlace、linen、beige 之間選,越往 beige 靠色偏越黃、越往 oldlace 靠越接近奶油色。
  • 珍珠白:規格裡沒有可以對應的色名,建議直接自訂,不必硬套一個接近的名字。

選好之後,把確定的 HEX 連同用途寫進色票,例如「頁面背景 #FFFFF0」,設計師與工程師之後就不會各自理解成不同的米白。

轉載色碼表常見的抄寫錯誤與查證方式

被大量轉載的中文色碼表,偶爾會出現抄錯的色碼。假設某張表把「象牙白」標成 #FAFFF0,和 W3C 規格裡 ivory 的 #FFFFF0 只差一個字元,紅色通道卻從 255 變成 250,整個顏色往黃綠偏。

「白杏仁」也是一樣,若被抄成 #FFFFCD,對照 W3C 規格的 blanchedalmond #FFEBCD,綠色通道從 235 變成 255,顏色就從淺杏色變成淡檸檬黃。

查證的方法很簡單,打開 W3C 的 CSS Color Module Level 4,找到命名顏色表,搜尋該色的英文色名,再逐位比對 HEX。從別人整理的色碼表複製顏色時,用到之前先抽幾個核對過,比事後在成品裡發現色偏省事得多。

白底換成米白或冷白後,灰字的對比會先過不了關

把純白背景換掉,最容易被忽略的是文字的對比。純白底上通過檢查的灰色字,換到米白或骨董白底,就可能掉到門檻以下。色碼表通常只列色碼,不會告訴你換了底色之後,文字的對比值變成多少。

WCAG 對正文與大字的對比門檻

W3C 的 WCAG 2.2(Success Criterion 1.4.3)規定,一般文字與背景的對比至少要 4.5:1;大字的門檻放寬為 3:1。這裡的大字指至少 18pt,或 14pt 的粗體,中日韓字體則以等效大小計算。

規格也提醒,計算出來的數值不能四捨五入,4.499:1 就是不達標。

同一個灰字在不同白底上的實算結果

下面這張表依 WCAG 的相對亮度公式實算,列出三種文字顏色在七種白底上的對比值。其中 #FAF9F6 是設計師常用的自訂米白,不屬於 CSS 命名顏色。

底色#333333#767676#999999
#FFFFFF 純白12.634.542.85
#FFFFF0 ivory12.524.502.82
#FAF9F6 常見自訂米白12.004.312.71
#F5F5F5 whitesmoke11.594.172.61
#F8F8FF ghostwhite11.954.302.69
#FAF0E6 linen11.234.042.53
#FAEBD7 antiquewhite10.793.882.43

表中可以看出幾件事。第一,深色字 #333333 換到任何一種白底都有 10 以上,遠高於 4.5,所以文字夠深的話,換底色不必擔心。

第二,真正會出問題的是中灰色的字。#767676 在純白底上是 4.54,剛好過關;在 ivory 上是 4.50,已經是臨界;到了 #FAF9F6 就降到 4.31,低於 4.5。linen 與 antiquewhite 上更只剩 4.04 和 3.88,介於一般文字與大字的門檻之間,只有大字還能過。

第三,#999999 這類淺灰字更嚴重。它在純白底上就只有 2.85,換成表中任何一種白底都更低,連大字的 3:1 也過不了。

#767676 灰字在純白底對比 4.54 可當一般文字,換到米白 #FAF9F6 降到 4.31、antiquewhite 只剩 3.88,#999999 在各白底都低於 3
同一個灰字換到偏暖或偏灰的白底,對比值就跟著下降,#767676 只有在純白與 ivory 上還能過 4.5,換底色後要用實際文字色重新驗證(門檻依據:W3C WCAG 2.2)。

挑白底的順序因此是先定底色,再用實際要用的文字顏色重新驗證一次對比,不要拿原本的文字色硬套新底色。

白色搭配的四組色碼,附實算對比值

這裡有四組可以直接複製的搭配,每組都是一個白底,加一個深色文字,再加一到兩個輔助色。選色邏輯是「底色先定,文字色再驗對比,輔助色只做點綴」,不是靠情緒聯想。

以下對比值都是依 WCAG 公式實算。有兩個原則四組都適用:

  • 一個版面只選一種白的色偏。暖白與冷白混在同一頁,卡片與頁面底色的色偏會互相干擾,看起來不協調。
  • 亮度太高的輔助色,像鼠尾草綠和亮金,只能做裝飾,不能拿來當文字顏色。

米白底配近黑文字、深棕標題與赤陶按鈕

角色HEX與底色的對比
底色(自訂米白)#FAF9F6—
文字#2B2B2B13.45
標題或連結(深棕)#8B4A2B6.41
按鈕底(赤陶)#B5532F4.70

底色 #FAF9F6 是自訂米白,不是 CSS 標準色。#B5532F 赤陶與底色的對比是 4.70,過了 4.5 的門檻,可以當按鈕底色,按鈕上的白字和它的對比則是 4.95。

亮金 #C9A227 與這個底色只有 2.30,鼠尾草綠 #9CAF88 只有 2.24,兩者都不能當文字,拿來做分隔線、圖案這類裝飾才合適。

冷白底與深海軍藍的組合

角色HEX與底色的對比
底色(aliceblue)#F0F8FF—
文字(深海軍藍)#1B2A4A13.26
標題或連結(鋼藍)#2F5D8A6.41

深海軍藍的文字讓冷白底看起來沉穩,鋼藍則用在標題或連結,和文字有明顯層次,兩者的對比也都超過 4.5。

#5B8DB8 這個明亮一點的藍,與底色只有 3.29,只適合用在大字或圖示,不要拿來當正文或小字連結的顏色。

中性白底,炭灰字配一個品牌色

角色HEX與底色的對比
底色(whitesmoke)#F5F5F5—
文字(炭灰)#33333311.59
品牌色(以此為例)#0057B86.30

中性白最適合品牌色是主角的情況。底色沒有色偏,不會搶走品牌色的存在感,品牌色換成別的顏色,底色與文字色也不必跟著調整。範例用的 #0057B8 與底色的對比是 6.30,當連結或按鈕顏色都足夠。

換成其他品牌色時,記得和 #F5F5F5 重新驗一次對比,不要假設它也能過關。

象牙白底,深褐文字與暗金標題

角色HEX與底色的對比
底色(ivory)#FFFFF0—
文字(深褐)#3E2C1C13.16
標題或強調(暗金)#7A5C1E6.16

暗金 #7A5C1E 比亮金暗很多,所以能當標題或強調文字使用。亮金(例如 #C9A227,與這個底色只有 2.40)只當分隔線等裝飾,不放文字。

白色搭配的四組色碼:米白配赤陶、冷白配深海軍藍、中性白配品牌色、象牙白配暗金,文字色對比都在 4.5 以上,亮色只當裝飾
四組白底搭配都是底色先定、文字色驗過 4.5 的對比,亮金、鼠尾草綠與明亮藍這類對比不足的顏色只做裝飾或用在大字。

印刷時白色就是紙張本身的顏色

螢幕上的白是發光,紙上的白是不上墨。所以 #FFFFFF 在印刷品上長什麼樣子,完全由紙張決定。CMYK 的 0/0/0/0 代表四色都不上墨,露出來的就是紙張原本的顏色。

這也是同一個白在螢幕與紙上看起來不同的原因。紙張偏黃或偏暖的時候,印出來的「白」會跟螢幕上看到的有落差,旁邊如果並排彩色底色,這個落差尤其明顯。

對策是不要把紙張的顏色當成純白看待,而是在螢幕上先模擬一次。Adobe Photoshop 說明文件在〈Proofing colors〉裡介紹的軟打樣選項「Simulate Paper Color」,會依打樣用的描述檔,模擬真實紙張那種暗沉的白,不過並非所有描述檔都支援這個選項。

彩稿送印前,建議套用對應紙張的印刷描述檔做軟打樣,再開啟模擬紙張色彩,確認白色區塊與彩色區塊並排時的觀感。確認過後再送印,比拿到成品才發現白色偏黃要安心得多。

白色看起來是色碼裡最單純的一個,實際上最需要細挑,差 15 的藍色、差 5 的紅色,在螢幕上幾乎看不出差別,一旦搭上灰色文字或換成紙張,差異就顯現出來了。下一次選白色,先決定這個版面要偏暖還是偏冷,從 W3C 的色名表挑一個接近的 HEX 當起點,再用實際要用的文字顏色驗一次對比,最後把定案的色碼寫進色票,之後所有人用的都會是同一個白。

常見問答

本區問答由 AI 依文章內容自動整理,僅供快速參考,正式內容仍以全文為準。

白色的 HEX 色碼怎麼寫?

純白的 HEX 色碼是 #FFFFFF,三位簡寫為 #FFF,RGB 寫成 255、255、255,CSS 也能直接寫 white。HSL 是 hsl(0 0% 100%),印刷的 CMYK 則是 0/0/0/0,代表四色都不上墨。

白色色碼的暖白和冷白怎麼分辨?

白色色碼看 RGB 哪個通道比 255 低就能分辨。藍色被拉低會偏黃,屬於暖白,例如 ivory #FFFFF0;紅色最低則偏藍或偏綠,屬於冷白,例如 aliceblue #F0F8FF;三個數字相同就是中性白。差距越大,色偏越明顯。

燈泡標示的暖白光能換算成網頁色碼嗎?

燈泡的暖白光不能換算成網頁色碼。燈光用 K 值標示色溫,K 值越低越暖、越高越冷;網頁色碼的暖白冷白只是 RGB 數字之間的相對偏向,兩個系統無法互相換算,需要暖白就直接從 ivory、floralwhite 這類色碼挑。

米白的色碼為什麼每個網站都不一樣?

米白、乳白、珍珠白都不在 W3C 的 CSS 色名規格裡,本來就沒有標準色碼,各站給的值不同並不是誰寫錯。米白可以從 oldlace、linen、beige 之間挑一個當起點,再把定案的 HEX 寫進團隊色票,大家用的才會是同一個米白。

白底換成米白後,灰色文字為什麼不夠清楚?

米白底比純白暗,中灰色文字的對比會跟著下降。依 WCAG 公式實算,#767676 在純白底上是 4.54,剛好過 4.5 的門檻,換到 #FAF9F6 米白就降到 4.31。換底色後要用實際的文字顏色重新驗一次對比。

資料來源
  1. CSS Color Module Level 4 — W3C
  2. Web Content Accessibility Guidelines (WCAG) 2.2 — W3C
  3. Understanding Success Criterion 1.4.3: Contrast (Minimum) — W3C
  4. LED Bulbs Made Easy: Just Look for the ENERGY STAR — ENERGY STAR
  5. Proofing colors in Photoshop — Adobe