Html页面支持暗黑模式的实现

(编辑:jimmy 日期: 2025/1/7 浏览:2)

自19年开始,Android和IOS平台,都开始玩暗黑模式。当然这没什么不好,但是当我们的页面被用户在暗黑模式打开之后,会被那传统大白色瞬间闪瞎双眼。

下面会简单的说一下如何让页面支持暗黑模式。

准备

其实,我们只是需要使用到css中的 prefers-color-scheme 媒体查询。

  1. no-preference 表示用户未制定操作系统主题。作为布尔值时,为 false 输出。
  2. light 表示用户的操作系统是浅色主题。
  3. dark 表示用户的操作系统是深色主题。

说明
 

  1. 这篇文章发布的时候,微信还无法拿到 prefers-color-scheme 参数,所以当我们在微信中打开页面目前不支持暗黑模式。
  2. 此方法只是一个简单demo,可以使用该方法拓展出其他实现方式。
  3. prefers-color-scheme说明
  4. DEMO地址

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no">
    <title>页面适应黑暗模式</title>
</head>
<body class="back">
<div class="models"><h1>测试文字</h1></div>
</body>
</html>

CSS

.back {background: white; color:  #555;text-align: center}

@media (prefers-color-scheme: dark) {
  .back {background:  #333; color: white;}
  .models {border:solid 1px #00ff00}
}

@media (prefers-color-scheme: light) {
  .back {background: white; color:  #555;}
  .models {border:solid 1px #2b85e4}
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

一句话新闻

一文看懂荣耀MagicBook Pro 16
荣耀猎人回归!七大亮点看懂不只是轻薄本,更是游戏本的MagicBook Pro 16.
人们对于笔记本电脑有一个固有印象:要么轻薄但性能一般,要么性能强劲但笨重臃肿。然而,今年荣耀新推出的MagicBook Pro 16刷新了人们的认知——发布会上,荣耀宣布猎人游戏本正式回归,称其继承了荣耀 HUNTER 基因,并自信地为其打出“轻薄本,更是游戏本”的口号。
众所周知,寻求轻薄本的用户普遍更看重便携性、外观造型、静谧性和打字办公等用机体验,而寻求游戏本的用户则普遍更看重硬件配置、性能释放等硬核指标。把两个看似难以相干的产品融合到一起,我们不禁对它产生了强烈的好奇:作为代表荣耀猎人游戏本的跨界新物种,它究竟做了哪些平衡以兼顾不同人群的各类需求呢?