Google 是如何設(shè)計深色模式的?
讀完這篇 Google Dark Mode 的設(shè)計規(guī)范,你會知道為什么說很多 APP 的 Dark Mode 都是存在很大問題的,包括 beta 版微信和網(wǎng)易云音樂。如果讀完之后你還對上句話存在懷疑,那就在晚上關(guān)燈后躺在被窩使用上述兩款 APP 的 Dark Mode 試試看。
深色模式在大多數(shù)的UI設(shè)計上表現(xiàn)為深顏色的界面,通常作為對默認(rèn)(淺色)顏色模式的補(bǔ)充。
一、深色模式的特性
Material Design 的深色模式包含以下屬性:
- 對比度:深色界面和100%的白色文字之間的對比度應(yīng)至少為15.8:1。
- 海拔:海拔更高的組件通過顯示更亮的表層顏色來表達(dá)其高度。
- 去飽和度:深色模式中的首選顏色需要去飽和度,這樣首選顏色與主體文字不論在哪個海拔共同使用時,兩者的對比度都至少為4.5:1,才能符合WCAG的AA標(biāo)準(zhǔn)。
- 有限的顏色:大面積使用深色表層顏色,外加有限的強(qiáng)調(diào)色。
二、主要組成部分
深色模式UI會大面積使用深色表層及少量的顏色,可以在保證高標(biāo)準(zhǔn)可用性的同時散發(fā)出較弱的光。
- 背景色 Background(0dp遮罩)
- 表層色 Surface(1dp遮罩)
- 首選色 Primary
- 次級色 Secondary
- 背景層文字
- 表層文字
- 首選層文字
- 次級層文字
深色模式的開關(guān)
深色模式可以隨系統(tǒng)主題自動切換(Android10),也可在APP內(nèi)設(shè)置開關(guān)。
- 突出顯示:在主界面中設(shè)置圖標(biāo)icon切換開關(guān)
- 弱化顯示:在菜單或者設(shè)置中設(shè)置切換開關(guān)
三、設(shè)計應(yīng)用細(xì)則
深色模式應(yīng)使用深灰色作為主要顏色,而非純黑色。深灰色可以包容更廣泛的顏色、高度和深度,因?yàn)樗菀卓吹交疑幱啊?/p>
深灰色界面還可以減輕眼部疲勞,因?yàn)闇\色的文字在深灰色的界面上比在純黑色的界面對比度更低。
Google 推薦的深色模式界面顏色是 #121212。
1. 海拔的表示
深色模式中的各個組件與淺色模式一樣,也需要呈現(xiàn)出不同的海拔、陰影等。但是,深色模式中不同的海拔是通過不同的表面亮度來表現(xiàn)的。
海拔越高顏色越亮。
組件表面的海拔越高(假設(shè)上方有個隱形光源,將組件上升到更接近光源的位置),則該組件就越亮。我們可以通過給組件表面顏色增加半透明白色遮罩來表達(dá)亮度。
給顏色增加遮罩還可以使我們更加輕松地分區(qū)組件與其陰影,提高組件與陰影之間的對比度,使組件的邊緣更加明顯。
- 半透明白色遮罩并不適用于使用了首選顏色和次級顏色的組件;
- 在深色模式中,陰影依然要使用黑色,因?yàn)樵趯?shí)際生活中陰影不可能出現(xiàn)其他顏色。
2. 易用性和對比度
深色模式中的背景顏色必須足夠深以展示白色文字。背景顏色與文字之間的對比度至少為 15.8:1。
如果要創(chuàng)建符合品牌設(shè)定的深色界面,可以用較低的不透明度將品牌色覆蓋在#121212上。
#121212是 Google 建議使用的深色模式界面顏色。
3. 顏色的使用原則
應(yīng)避免在深色模式中給文字使用不能通過WCAG色彩易用性測試的飽和色(背景與文字的對比度應(yīng)高于4.5:1)。深色背景上面的飽和色會導(dǎo)致眼睛疲勞。
4. 如何選擇首選色
首選色是在APP界面和各類組件中最常出現(xiàn)的顏色。Material Design baseline的深色模式中使用色調(diào)200作為首選色。
5. 首選色的延伸
深色模式中組件有時也會用到淺色,可以在這類組件上使用由首選色延伸出的顏色。
6. 次級色
次級色可以用于強(qiáng)調(diào)UI中的某些部分。深色模式中的次級色同樣需要去飽和度以符合高于4.5:1的對比度標(biāo)準(zhǔn)。
7. 強(qiáng)調(diào)色
在深色模式中,深色占據(jù)了UI中大部分的界面。通常情況下強(qiáng)調(diào)色會采用亮色(例如更飽和或更鮮明的顏色),從而達(dá)到突出元素的目的。強(qiáng)調(diào)色應(yīng)該謹(jǐn)慎使用,僅用于強(qiáng)調(diào)一些關(guān)鍵元素,例如文字、按鈕。
8. 如何確定強(qiáng)調(diào)色?
Material色板生成器可以用來創(chuàng)建配色方案,也可以用來生成色調(diào)板,然后從中選擇可用于深色模式的顏色。
為了能更好的適應(yīng)深色模式,建議使用色調(diào)在200-50的顏色,避免使用色調(diào)在900-500之間的飽和色。這可能跟你在淺色模式選擇顏色的原則有所差別。
9. 品牌色
為了保留品牌辨識度,高飽和度的品牌色也可以在深色模式中使用。但APP中的品牌元素應(yīng)限制在1-2種,比如logo或者用于一個帶有品牌色的按鈕。
謹(jǐn)慎的使用品牌色可以使品牌元素保持高優(yōu)先級,突出其重要位置。
10. 錯誤色
錯誤色用于指示錯誤狀態(tài)。
Material Design baseline中使用的錯誤色是#CF6679。這個顏色是通過將淺色模式中的錯誤色#B00020覆蓋上不透明度為40%的白色遮罩得來的。
11. 排版和圖標(biāo)
“上層”色
“上層”色主要用在那些位于關(guān)鍵界面上的文字、圖標(biāo)等相對細(xì)微的元素,這些關(guān)鍵界面使用了首選色、次級色、表層色、背景色、錯誤色等。
在深色模式中,“上層”色通常使用白色或者黑色,如下圖所示。
深色背景上的淺色文字
當(dāng)淺色文字需要顯示在深色背景上面時,建議采用以下幾個不飽和度:
- 高優(yōu)先級文字:不透明度為87%
- 中優(yōu)先級或提示文字:不透明度為60%
- 表示不可用狀態(tài)的文字:不透明度為38%
四、自定義應(yīng)用
使用一些特定的深色模式組件對 Material Design 一些用例來講也很受用。使用一些特定的深色模式組件對 Material Design 一些用例來講也很受用。
1. 面積較大的控件
屏幕中那些占用較大面積的組件,比如 app bar 或背景,可以使用深色。
- 如果是亮色,可用于較小的組件,不要用在面積較大的組件上。
- 避免使用深色模式中的首選色作為背景色,因?yàn)楸尘懊娣e通常很大,會使界面整體看起來太亮。
2. 淺色與深色的結(jié)合
如果深色模式中要用到淺色的組件,則淺色可以用于突出這個組件的優(yōu)先級。
例如,將深色模式中的 snackbar(消息通知組件)設(shè)定為淺色,可使 snackbar 在界面中更加突出。
附錄
- WCAG:全稱Web Content Accessibility Guidelines(Web內(nèi)容無障礙指南)。
- 色彩對比度計算網(wǎng)站:https://contrast-ratio.com/
本文由@Jalyn 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)允許,禁止轉(zhuǎn)載。
題圖來自Unspalsh, 基于CC0協(xié)議。
那么問題來了,產(chǎn)品經(jīng)理App什么時候有深色模式??
很棒