「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > CSS 変数と JavaScript を使用して、Web サイトにカスタマイズ可能なダーク モードを作成するにはどうすればよいですか?

CSS 変数と JavaScript を使用して、Web サイトにカスタマイズ可能なダーク モードを作成するにはどうすればよいですか?

2024 年 11 月 7 日に公開
ブラウズ:169

How can I create a customizable dark mode for my website using CSS Variables and JavaScript?

CSS 変数と JavaScript を使用したダーク モードのカスタマイズ

アプリまたは Web サイトにダーク モードを実装することは、シームレスなユーザー エクスペリエンスを提供するために重要です。ネイティブ CSS メディア ルールは、ブラウザーがシステム設定のダーク モードを検出するオプションを提供しますが、ユーザーは、Microsoft Edge など、まだサポートしていない特定のサイトやブラウザーに対して別のテーマを好む場合があります。

対処するにはこれにより、CSS 変数と JavaScript を利用してテーマ設定を管理できます。

変数とテーマによる CSS カスタマイズ

ルートまたはデフォルト レベルで CSS 変数を定義し、指定しますダークテーマ:

:root {
    --font-color: #000;
    ...
    --bg-color: rgb(243,243,243);
}

[data-theme="dark"] {
    --font-color: #c1bfbd;
    ...
    --bg-color: #333;
}

スタイルを動的に調整するために必要な変数を呼び出します。

テーマの検出と切り替えのための JavaScript

HTML のヘッダー セクションに、次のコードを追加します。ユーザーの好みのテーマを検出するための JavaScript:

function detectColorScheme() {
    var theme = "light";
    ...
}
detectColorScheme();

JavaScript を使用して明るいテーマと暗いテーマを切り替えます:

const toggleSwitch = document.querySelector('#theme-switch input[type="checkbox"]');

function switchTheme(e) {
    ...
}

toggleSwitch.addEventListener('change', switchTheme, false);

テーマ切り替え用の HTML

ユーザー制御のテーマ切り替え用の HTML チェックボックスを作成します:

このアプローチを使用すると、ユーザーのテーマを自動的に検出し、ユーザーがそれをオーバーライドできるようにし、ブラウザーやプラットフォーム全体でカスタマイズされたエクスペリエンスを提供できます。

最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3