Kliknutím přeskočíte na hlavní obsah
Senoweb

Tmavý režim webu v pěti minutách

Ilustrace barevných vlnek
Fáze měsíce na obloze

Jak přidat dark mode na váš web v pěti minutách

Ondřej Senohrábek 18. 3. 2024

V tomto krátkém blogovém návodu si ukážeme, jak přidat tmavý režim zobrazení na váš web během 5 minut - bez žádného zbytečného kódu, který by zpomaloval vaši stránku. Najdete zde varianty kódu pro použití s klasickým CSS, preprocesorem LESS a frameworkem TailwindCSS.

HTML

Nejdříve je potřeba vytvořit HTML tlačítko, které bude přepínat mezi tmavým a světlým režimem. V tomto příkladu máte tlačítko, které je i na našem webu. Samozřejmě můžete ale použít i libovolné tlačítko ve formátu SVG ikony nebo obrázku.

LESS

Naše tlačítko je potřeba také nastylovat pomocí CSS. V Senoweb používáme preprocesor LESS, v němž je možné použít tento kód. V kódu jsou zabudované i animace pro přecházení mezi světlým a tmavým režimem.

CSS

Pokud nepoužíváte žádný preprocesor ale klasické CSS, použijte tento kód pro nastylování tlačítka.

JavaScript

Musíme vytvořit také krátký JavaScript kód, kterým zajistíme, že při kliknutí na tlačítko se přidá class "dark" k elementu <html> a nadefinujeme veškerou logiku tmavého režimu.

Nyní máme vše potřebné připraveno, jak nastavit tmavý vzhled na jednotlivých elementech webu?

Pro nastylování tmavého vzhledu jednotlivých elementů můžeme použít buď klasické CSS nebo framework TailwindCSS, který má zabudovaný dark mode systém.

Nastavení tmavého režimu elementů pomocí CSS

Konfigurace tmavého režimu v TailwindCSS

Pro zprovoznění tmavého režimu v TailwindCSS je potřeba upravit konfigurační soubor tailwind.config.js

Pro více informací můžete nahlédnout do oficiální dokumentace TailwindCSS. https://tailwindcss.com/docs/dark-mode

Ukázka funkčního tmavého režimu

Když všechno spojíme dohromady, vznikne nám funkční dark mode.

See the Pen Senoweb.cz dark mode by nula1337 (@nula1337) on CodePen.

Výhody tmavého režimu webu a proč ho implementovat?

Možná by se zdálo, že tmavý režim je hloupost, která nemá žádné reálné využití a slouží pouze jako zajímavá funkce, kterou web trochu oživíte. Není tomu tak! V dnešní době už je velmi zásadní zpřístupnit webové stránky všem a to i těm, kteří mají určité zrakové nebo jiné znevýhodnění.

  1. Tmavý režim je šetrnější pro oči a může pomoct i s množstvím vyzařovaného modrého světla, které negativně ovlivňuje kvalitu spánku
  2. Berete ohled na znevýhodněné lidi trpící světloplachostí a zvýšenou citlivostí vůči světlu
  3. Tmavý režim šetří baterii na mobilních zařízeních, které mají OLED displej
  4. Zaujmete návštěvníky webu funkcí, kterou nemá každý web.
  5. Tmavý režim vypadá skvěle :)