ライトモードとダークモードの切り替えでチラつき解消

20251103

文字数[964文字] この記事は1分12秒で読めます.

Logging

おはようございます.何だか寒い日が続きます、寒いのはあまり好きではないですね….今年の冬は平年よりも寒いかもですね.

さて、先日の午前中にこのブログサイトのデザインなどをいじってました.今まであった「文字の大きさ変更」が消えてたり、文字の行間が微妙に変わっていたりしています.

それとライトモードとダークモードのちらつきを解消しました.参考にしたサイトはこちらになります.サイトを参照していただければ分かるかなと思いますが、なぜチラつきが発生するのかをこちらでも簡潔に説明するとjavascriptの読み込みタイミングによりチラつきが発生します.

切り替えを制御するjsをフッターに書くのではなくヘッダー内に書くこと.そしてブラウザカラーのモードとローカルストレージが不一の場合にチラつきが発生するのでヘッダー内で制御することです.

因みに参照サイトはTypeScriptで記載されていますが、Jsで制御したい場合は下記のコードを参照することで上手く動作すると思います.

明日へ続く

(function () {
  const prefers = window.matchMedia("(prefers-color-scheme: dark)").matches
    ? "dark"
    : "light";
  const fromStorage = localStorage.getItem("theme");
  const colorMode = !fromStorage
      ? prefers
      : fromStorage === "light"
        ? "light"
        : "dark";
  window.document.documentElement.dataset.colorMode = colorMode;
})();



3554番目の投稿です/40 回表示されています.

中の人🏠️

AIによるおすすめ記事

著者名  @taoka_toshiaki

※この記事は著者が40代後半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


タグ

javascript, JS, TypeScript, コード, こちら, こと, サイト, ストレージ, ダーク, タイミング, デザイン, フッター, ブラウザカラー, ブログサイト, ヘッダー, モード, ライド, ローカル, 下記, 不一, 今年, 先日, 切り替え, 制御, 動作, 午前, 参照, 参考, 場合, 変更, 好き, 平年, 微妙, 文字, 明日, 発生, 簡潔, 行間, 解消, 記載, 説明, 読み込み,