精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

CSS Color-Scheme 和深色模式

開發(fā) 前端
color-scheme顧名思義,即為“配色方案”,在系統(tǒng)中指的是“白天模式”和“夜間模式”。使用這個屬性可以輕松的更改瀏覽器的默認(rèn)配色方案。

介紹一個和深色模式相關(guān)的CSS屬性:color-scheme。

一、什么是 color-scheme?

color-scheme[1]顧名思義,即為“配色方案”,在系統(tǒng)中指的是“白天模式”和“夜間模式”。使用這個屬性可以輕松的更改瀏覽器的默認(rèn)配色方案,語法如下:

color-scheme: normal;
color-scheme: light;
color-scheme: dark;
color-scheme: light dark;

幾個關(guān)鍵詞如下:

normal:表示元素未指定任何配色方案,因此應(yīng)使用瀏覽器的默認(rèn)配色方案呈現(xiàn)。

light:表示可以使用操作系統(tǒng)亮色配色方案渲染元素。

dark:表示可以使用操作系統(tǒng)深色配色方案渲染元素。

下面來看一個簡單的例子:

<h2>前端偵探</h2>
<button>關(guān)注我</button>

在無任何CSS的情況下,效果如下:

圖片

如果將系統(tǒng)配色設(shè)置為深色模式,由于什么都沒有做,當(dāng)然也不會有什么變化,如下:

圖片

現(xiàn)在在根元素上添加color-scheme屬性。

:root{
color-scheme: light dark
}

這里設(shè)置兩個值,表示可選的配色方案,由系統(tǒng)來決定。

官方文檔上雖然說是優(yōu)先選擇,實測兩種順序沒有區(qū)別。

效果如下:

圖片

是不是非常神奇?平平無奇的頁面馬上就支持深色模式了。

還可以指定單個值,這樣就和系統(tǒng)配色無關(guān)了,比如:

:root{
color-scheme: dark
}

這樣在淺色模式下也能以深色主題來渲染,效果如下:

圖片image-20220702172224904

二、color-scheme 的作用范圍

通過上面的例子看著好像很強(qiáng)大,是不是可以一鍵生成“深色”模式了?其實不然,??color-scheme?? 的作用范圍很有限,包括表單控件、滾動條和 CSS 系統(tǒng)顏色的使用值。

1、表單元素

先看表單元素,就拿 checkbox來說吧。

<input type="checkbox">

圖片

假設(shè)現(xiàn)在我們需要做一個深色模式的主題,手動將頁面背景設(shè)置為黑色。

body[dark]{
background: #000
}

圖片

是不是感覺到未勾選狀態(tài)有點太過刺眼了呢?

這時,就可以用到color-scheme了,可以將表單元素以深色模式渲染。

body[dark]{
background: #000;
color-scheme: dark
}

圖片

這樣是不是柔和多了?這里選中的主題色貌似也發(fā)生了變換,這個是瀏覽器為了方便夜間瀏覽默認(rèn)設(shè)置的,如果你不希望這個選中顏色,可以用accent-color來覆蓋。

body{
accent-color: #0175ff
}

效果如下:

圖片

accent-color可以更改表單元素的默認(rèn)顏色,有興趣的可以參考張鑫旭的這篇文章 CSS accent-color屬性簡介[2]。

下面是其他表單元素的深色模式。

圖片

2、滾動條

color-scheme也能改變滾動條的配色模式。這個在 windows 下比較明顯,默認(rèn)淺色模式下,滾動條是這種灰白色的。

圖片

如果在沒有自定義滾動條的情況下(很多設(shè)計覺得默認(rèn)滾動條挺好看的),設(shè)計了一套深色主題,可能就變成了這樣。

圖片

滾動條是不是顯得非常突兀?是不是只能通過偽類自定義滾動條樣式了呢?現(xiàn)在有了color-scheme就不需要這么麻煩了,直接設(shè)置如下:

body[dark]{
color-scheme: dark
}

這樣是不是和諧多了?

圖片

其實 MDN 官網(wǎng)已經(jīng)這么做了,上面只是臨時屏蔽了這一屬性。

圖片

3、CSS 系統(tǒng)顏色

系統(tǒng)顏色指的是瀏覽器內(nèi)置的一些顏色。比如前面的button,為什么能自動渲染成深色模式呢?除了因為它是表單元素外,最根本的一點是這些表單元素的默認(rèn)樣式上使用了系統(tǒng)顏色。注意看下面這個截圖。

圖片

可以看到,button的默認(rèn)樣式里,使用到了一些系統(tǒng)顏色。

button{
/**/
color: buttontext;
background-color: buttonface;
border-color: buttonborder;
}

這里的buttontext、buttonface、buttonborder?就是系統(tǒng)顏色了,它會根據(jù)color-scheme自動適應(yīng)深色模式。

圖片

這些系統(tǒng)顏色不僅僅可以用在表單元素上,也能用在普通元素上,比如這里取按鈕文本顏色buttontext。

div{
background-color: buttontext;
}

這個顏色會在深色模式下自動變成白色,如下:

圖片

如果手動的指定了一些正常顏色,那么也就失效了

button{
color: #333
}

圖片

所以,綜合上面所述,只有系統(tǒng)相關(guān)的樣式和顏色才可以受到color-scheme的影響。

完整的 CSS 系統(tǒng)顏色可以參考官方 MDN 文檔[3] ,比較有限,而且顏色都是那種黑白等高飽和度顏色,酌情使用。

三、color-scheme 和 prefers-color-scheme

相比color-scheme?,大家可能更熟悉prefers-color-scheme,它用于檢測用戶是否有將系統(tǒng)的主題色設(shè)置為亮色或者暗色。

.day   { background: #eee; color: black; }
.night { background: #333; color: white; }
@media (prefers-color-scheme: dark) {
.day.dark-scheme { background: #333; color: white; }
.night.dark-scheme { background: black; color: #ddd; }
}

那么,它和color-scheme有什么聯(lián)系呢?舉個例子。

:root{
color-scheme: dark;
}
@media (prefers-color-scheme: dark) {
body {
color: red
}
}

請問,在淺色模式下,body 的顏色是什么?

下面來看實際結(jié)果:

圖片

只有當(dāng)系統(tǒng)真正切換到深色模式,才會變成紅色。

圖片

所以結(jié)論是,color-scheme? 和 prefers-color-scheme?沒有必然聯(lián)系,并不會干涉prefers-color-scheme?的判斷,但是是相輔相成的,color-scheme? 可以更好的處理系統(tǒng)默認(rèn)的一些樣式,而 prefers-color-scheme可以更方便的自定義其他普通樣式。

四、總結(jié)一下

綜上所述,為了更好的支持深色模式,可以在常規(guī)的深色模式下添加color-scheme作為兜底方案,可以很好的適配瀏覽器原生樣式。

:root{
color-scheme: light dark
}

這樣一個小知識點,學(xué)到了嗎?下面是本文要點總結(jié)。

  1. color-scheme 是原生支持的配色方案,支持“白天模式”和“夜間模式”,可以輕松地更改瀏覽器的默認(rèn)配色方案。
  2. color-scheme 支持的對象有表單控件滾動條CSS 系統(tǒng)顏色。
  3. CSS 系統(tǒng)顏色指的是瀏覽器內(nèi)置的顏色,這些顏色是動態(tài)的。
  4. 但是系統(tǒng)顏色比較有限,而且顏色都是那種黑白等高飽和度顏色,酌情使用。
  5. 媒體查詢 prefers-color-scheme 不會受到 color-scheme 的影響,只和系統(tǒng)設(shè)置有關(guān)。
  6. 平時使用中 color-scheme 和 prefers-color-scheme 需要相互配合, color-scheme 適配原生,prefers-color-scheme 適配自定義。

然后提一下兼容性,其實對版本要求還挺高的。

圖片image-20220706152054928

但是,這并不影響我在項目中使用。原因很簡單,這算得上是漸進(jìn)增強(qiáng)的屬性,即使瀏覽器不支持,也不會對頁面造成什么影響,如果支持,體驗會更好。所以,趕緊使用起來吧,就一行代碼的事,無形之中提升了視覺體驗。

參考資料

?[1]color-scheme: https://developer.mozilla.org/zh-CN/docs/Web/CSS/color-scheme。

[2]CSS accent-color屬性簡介: https://www.zhangxinxu.com/wordpress/2022/03/css-accent-color/。

[3]MDN 文檔: https://developer.mozilla.org/zh-CN/docs/Web/CSS/color_value#%E7%B3%BB%E7%BB%9F%E9%A2%9C%E8%89%B2?。

責(zé)任編輯:姜華 來源: 前端偵探
相關(guān)推薦

2021-11-04 10:29:01

CSS前端

2023-07-27 10:42:45

必應(yīng)聊天微軟

2019-05-29 10:16:47

iOS應(yīng)用系統(tǒng)

2020-12-07 13:23:07

LibreOffice開源

2020-04-13 15:05:10

Ubuntu深色模式Ubuntu 20.0

2023-10-10 09:00:00

CSSJavaScript

2020-03-23 11:43:43

微信iOS 7.0.12深色模式

2022-03-25 09:45:40

GNOMEGNOME 42

2022-09-16 07:33:52

瀏覽器深色模式Firefox

2021-11-22 09:56:13

FedoraLinux

2022-11-08 11:39:34

Web瀏覽器深色模式

2021-04-02 17:05:43

Chrome瀏覽器Incognito

2023-06-26 09:16:34

CSScolor-mix

2019-04-16 09:47:42

iOS應(yīng)用系統(tǒng)

2020-04-07 16:25:39

微信深色模式黑色模式

2021-12-08 11:21:37

Windows 11記事本微軟

2019-12-19 15:09:19

微信深色模式消息引用

2021-09-02 00:13:41

Windows 11Windows微軟

2025-10-20 09:08:29

網(wǎng)頁深色模式CSSHTML

2019-06-18 09:28:34

iOS 13手機(jī)黑暗模式
點贊
收藏

51CTO技術(shù)棧公眾號

热久久天天拍国产| 亚洲www啪成人一区二区| 国产99久久久久| 国外成人在线播放| 一道本在线观看| 亚洲三级电影| 欧美日韩激情小视频| 亚洲精品日韩精品| 囯产精品一品二区三区| 久久一区二区三区超碰国产精品| 日韩在线观看免费高清完整版| 绯色av蜜臀vs少妇| www成人在线视频| 亚洲影视在线观看| 亚洲精品成人久久久998| 日本人妻丰满熟妇久久久久久| 日韩成人免费看| 久久久久日韩精品久久久男男 | 成人免费网站www网站高清| 亚洲免费电影在线| 欧美日韩国产精品一卡| 午夜精品久久久久久久爽| 日韩电影在线观看电影| 97人人爽人人喊人人模波多| 欧美三级黄色大片| 国产探花一区二区| 亚洲第一精品自拍| 欧美性猛交xx| 久久影视精品| 日本道色综合久久| 欧美三级在线观看视频| 制服丝袜在线播放| 国产精品美女久久久久av爽李琼| 国外成人免费视频| www久久久久久| 国产综合久久久久久久久久久久| 国产成人一区二区| 日韩精品――中文字幕| 欧美日韩精品| 久久在线视频在线| 亚洲综合久久av一区二区三区| 女人av一区| 亚洲老头老太hd| 天堂久久久久久| 日本午夜精品| 精品无人区太爽高潮在线播放| 一级黄色免费视频| 亚洲国产中文在线| 欧美成人a视频| 超碰91在线播放| 99精品在免费线偷拍| 欧美艳星brazzers| 蜜臀av免费观看| jvid一区二区三区| 欧美日韩国产三级| 亚洲理论中文字幕| 国产精品高清一区二区| 日韩一本二本av| 老司机av网站| 国产成人一二片| 亚洲精品720p| 亚洲图片综合网| 午夜精品影视国产一区在线麻豆| 亚洲精品一区二区三区婷婷月| jizz日本免费| 成人aaaa| 欧美巨大黑人极品精男| 成人免费精品动漫网站| 欧美日本三区| 久久久亚洲精选| 日韩不卡视频在线| 日韩精品欧美精品| 91久久久在线| 精品黑人一区二区三区在线观看| 国产91精品一区二区麻豆亚洲| 爱情岛论坛亚洲入口| 亚洲aaa在线观看| 国产欧美在线观看一区| 亚洲午夜精品久久久久久浪潮| 国产原创在线观看| 午夜精品一区在线观看| 精品视频无码一区二区三区| 日本黄色成人| 精品国产亚洲在线| www.av天天| 影视一区二区| 91禁国产网站| 91麻豆成人精品国产免费网站| 国产成人一级电影| 欧美激情一区二区三区在线视频| aiai在线| 午夜国产精品一区| 五月天av在线播放| 国产精品男女| 日韩网站免费观看| 国产成人亚洲欧洲在线| 麻豆精品蜜桃视频网站| 国产精品国产精品国产专区蜜臀ah | 美脚丝袜一区二区三区在线观看| bbbbbbbbbbb在线视频| 亚洲综合成人在线| 色戒在线免费观看| 欧美调教在线| 超碰91人人草人人干| 四虎成人永久免费视频| 国产成人免费网站| 色之综合天天综合色天天棕色| 三级网站视频在在线播放| 日本道在线观看一区二区| 中文字幕人妻一区| 99久久精品费精品国产风间由美 | 久久久久香蕉视频| 久久激情一区| 国产日韩欧美综合精品 | 国产精品成人午夜| 免费观看精品视频| 成人福利免费在线观看| 日韩在线视频网| 精品国产xxx| 菠萝蜜视频在线观看一区| 中国 免费 av| 国产精品成人国产| 亚洲欧洲自拍偷拍| 久久国产精品系列| 成人一区二区在线观看| 日韩精品福利片午夜免费观看| 台湾佬成人网| 亚洲另类图片色| 国产主播在线观看| 国产成人在线视频网址| 在线不卡视频一区二区| 黄色精品视频| 亚洲网站在线看| 国产高潮久久久| heyzo一本久久综合| 菠萝蜜视频在线观看入口| 日本午夜免费一区二区| 在线精品国产欧美| 亚洲第一区av| 国产欧美视频一区二区三区| 国产成人综合一区| 免费一区二区三区视频导航| 日本精品久久久| 日本韩国一区| 色老综合老女人久久久| 日本性高潮视频| 日韩电影在线免费| 色99中文字幕| 欧美成人毛片| 久久久精品在线观看| 国产一区二区在线视频观看| 亚洲欧洲精品一区二区三区不卡| 麻豆三级在线观看| 国产精品毛片久久| 91亚色免费| 欧美24videosex性欧美| 精品久久久久久亚洲综合网| 国产无码精品在线观看| fc2成人免费人成在线观看播放| 男人添女人下部高潮视频在观看| 国产精品一区二区三区美女| 69av成年福利视频| 国产精品一区二区三区四区色| 欧美色图12p| 欧美风情第一页| 国产成人av网站| 国产综合av在线| 久久最新网址| 成人精品视频在线| 羞羞电影在线观看www| 精品免费国产一区二区三区四区| 国产精品9191| 国产三级一区二区| av中文字幕网址| 欧美久久一区| 欧美高清性xxxxhd| 91精品国产自产观看在线| 精品中文字幕在线2019| 亚洲 欧美 精品| 欧美日韩在线播放三区| 黄色一级片在线免费观看| 91香蕉视频污| 不卡的av中文字幕| 亚洲小说欧美另类社区| 亚欧洲精品在线视频免费观看| 亚洲欧洲专区| 日韩av色在线| 黄色动漫在线| 国产午夜精品理论片a级探花| 最近中文字幕在线免费观看| 亚洲一区二区中文在线| 三年中国中文观看免费播放| 国产91丝袜在线播放| 成人午夜激情av| 亚洲午夜极品| 一区二区三区四区五区精品| 精品少妇3p| 96sao精品视频在线观看| 中文在线免费二区三区| 久久综合伊人77777尤物| 免费在线视频你懂得| 日韩一区二区中文字幕| 这里只有久久精品视频| 亚洲国产日韩一区二区| 欧美日韩国产黄色| caoporn国产一区二区| 亚洲黄色av片| 日韩中文字幕91| 草草视频在线免费观看| 天天天综合网| 日韩福利影院| 欧美尿孔扩张虐视频| 91视频8mav| 亚洲精品555| 国产z一区二区三区| 国产污视频在线播放| 久久综合九色九九| 天堂中文а√在线| 亚洲欧美另类国产| 五月婷在线视频| 精品久久久久久久久久久久包黑料 | 国模 一区 二区 三区| 一区二区不卡在线视频 午夜欧美不卡' | 久久久人人人| 国产午夜大地久久| 欧美色一级片| 最近免费观看高清韩国日本大全| 不卡在线一区| 四虎永久国产精品| 久久超碰99| 日本成人三级| 国产精品美女久久久久久不卡| 国产日韩一区二区| 激情小说亚洲色图| 国内不卡一区二区三区| 成人自拍在线| 成人动漫在线视频| 6080成人| 国产精品一区二| 超碰cao国产精品一区二区| 亚洲综合小说区| 日韩免费一级| 99在线视频播放| 日韩精品视频在线看| 99影视tv| 你懂的在线观看一区二区| 国产欧美一区二区视频| 免费日韩一区二区三区| 就去色蜜桃综合| 妖精视频一区二区三区免费观看| 久久综合久久综合这里只有精品| 美腿丝袜亚洲图片| 精品一区2区三区| 亚洲欧洲色图| 日韩一区二区三区资源| 不卡一区综合视频| 国产91porn| 在线观看的日韩av| 一本大道熟女人妻中文字幕在线| 久久久天天操| 亚洲这里只有精品| 国产毛片精品视频| 国产日韩视频一区| 不卡的av中国片| 青娱乐国产视频| 亚洲欧美一区二区在线观看| 欧美成人三级视频| 欧美日韩国产激情| 黄色av网站免费| 欧美群妇大交群的观看方式| www.xxx国产| 亚洲精品久久久久中文字幕欢迎你| 天堂国产一区二区三区| 亚洲欧洲视频在线| 99在线播放| 欧美在线视频一区二区| 草民电影神马电影一区二区| 91精品视频免费观看| 果冻天美麻豆一区二区国产| 欧美污视频久久久| 一区二区不卡| 国产91对白刺激露脸在线观看| 久久av资源站| 亚洲精品中文字幕在线播放| 中文字幕国产一区二区| 久久国产在线观看| 91国偷自产一区二区使用方法| 一区二区三区黄色片| 亚洲国产女人aaa毛片在线| 成人18在线| 国模精品系列视频| 福利一区二区免费视频| 国产亚洲精品自在久久| 欧美电影免费| 国产成人精品视频免费看| 激情欧美日韩一区二区| 亚洲精品中文字幕在线播放| 亚洲视频你懂的| 黄色片视频免费| 欧美成人精品高清在线播放| 国产中文在线| 久久久久亚洲精品| 亚洲热av色在线播放| 日产国产精品精品a∨| 欧美视频二区| 亚洲精品成人在线播放| 91丨porny丨户外露出| 亚洲熟女www一区二区三区| 欧美这里有精品| 性高潮久久久久久久久久| 美乳少妇欧美精品| 成人国产精选| 日本电影一区二区三区| 99精品国产99久久久久久福利| 在线一区二区不卡| 国产精品欧美一级免费| 中文字幕视频网站| 精品国产露脸精彩对白| 国产黄大片在线观看画质优化| 国产精品久久久久不卡| 欧美极品中文字幕| av网站在线观看不卡| 9人人澡人人爽人人精品| 欧美成人综合色| 欧美精品v国产精品v日韩精品| 国产精品一区在线看| 国产98色在线| 亚洲激情77| 少妇高潮喷水久久久久久久久久| 成人18精品视频| 久久久久久久国产视频| 日韩欧美一区二区视频| 黄色成人在线| 91精品视频观看| 欧美在线高清| 99日在线视频| 亚洲天堂久久久久久久| 一区二区三区精彩视频| 久久激情视频免费观看| 欧美在线一级| 国产高清精品软男同| 精品影院一区二区久久久| 免费看一级黄色| 欧美人xxxx| 在线欧美三级| 国产69精品久久久久9999apgf| 欧美日韩综合| 人妻激情偷乱频一区二区三区| 亚洲一区二区av在线| 内射后入在线观看一区| 91精品91久久久久久| 夜色77av精品影院| 网站一区二区三区| 中文字幕制服丝袜一区二区三区| 国产毛片在线视频| 欧美高跟鞋交xxxxhd| 国产在线播放精品| 毛片av免费在线观看| 国产精品无人区| 一区二区美女视频| 欧美黑人国产人伦爽爽爽| 韩国女主播一区二区三区| 九九九九免费视频| 国产日韩精品一区二区浪潮av| 夜夜狠狠擅视频| 欧美劲爆第一页| 免费成人av| 最新国产黄色网址| 亚洲图片有声小说| 天堂在线一二区| 国产欧美 在线欧美| 午夜日韩视频| www.久久国产| 欧美日韩国产另类一区| 欧美xxxbbb| 日韩精品久久久| 国产在线精品免费| 久久久久久久久久免费视频| 亚洲一级免费视频| 视频一区日韩精品| 成人在线免费观看av| 中文字幕亚洲精品在线观看| 黄色av免费观看| 国产精品精品国产| 欧美先锋影音| 中文字幕第二区| 精品免费视频.| 国产成人精品一区二区三区在线| 欧美一级爱爱视频| 国产亚洲精品aa午夜观看| www.亚洲黄色| 国产精品入口免费视频一| 国产精品www994| 免费一级suv好看的国产网站| 欧美成人a视频| 欧美xxxx性| 国产精品免费成人| 一区二区在线观看免费视频播放| 精品三级久久久久久久电影聊斋| 亚洲最大福利网站|