Przełączanie Motywów CSS — Przewodnik od Zera
Jak zbudować przełącznik trybu jasno-ciemnego bez bibliotek. Używamy custom properties i localStorage do zapamiętania preferencji użytkownika.
Przeczytaj ArtykułNaucz się budować interfejsy, które są czytelne w każdym oświetleniu. Od kontrastu kolorów po zmienne CSS — wszystko co musisz wiedzieć.
Zacznij od tych artykułów, aby opanować fundamenty projektowania w trybie ciemnym.
Jak zbudować przełącznik trybu jasno-ciemnego bez bibliotek. Używamy custom properties i localStorage do zapamiętania preferencji użytkownika.
Przeczytaj Artykuł
Dlaczego kontrast 4.5:1 to minimum i jak go sprawdzić. Narzędzia, kalkulatory i praktyczne przykłady dla projektantów interfejsów.
Przeczytaj Artykuł
Jak używać zmiennych CSS do zarządzania kolorami. Omówienie fallbacków, dziedziczenia i integracji z JavaScriptem dla płynnych przejść między motywami.
Przeczytaj ArtykułZbuduj interfejsy, które pracują dla każdego użytkownika i każdego warunku oświetlenia.
Jasne interfejsy na ciemnym tle zmniejszają fotofobię. Użytkownicy mogą pracować dłużej bez dyskomfortu.
OLED i AMOLED ekrany zużywają mniej energii wyświetlając czarne piksele. To naprawdę się liczy na urządzeniach mobilnych.
Opcja trybu ciemnego czyni Twoją stronę dostępną dla użytkowników z różnymi preferencjami i warunkami wzroku.
Użytkownicy, którzy mogą wybrać swój preferowany motyw, spędzają więcej czasu na stronie.
Wszyscy liczą się z trybem ciemnym. Od iOS do Androida, od Chrome’a do Firefoksa — to już jest wszędzie.
Tryb ciemny otwiera nowe możliwości designu. Możesz eksperymentować z kolorami i kontrastem w zupełnie nowy sposób.
Prosty proces, który możesz wdrożyć dzisiaj. Bez skomplikowanych bibliotek czy frameworków.
Stwórz zmienne CSS dla wszystkich kolorów. Przechowaj je w :root dla trybu jasnego i [data-theme=”dark”] dla trybu ciemnego. To fundament całego systemu.
Umieść przycisk w nagłówku strony. To będzie Twój przełącznik trybu. Może być ikoną słońca/księżyca lub prostym toggle’em.
Napisz funkcję, która zmienia atrybut data-theme na elemencie html. Przechowaj preferencję użytkownika w localStorage.
Upewnij się, że wszystkie kombinacje kolorów spełniają WCAG AA (4.5:1 dla tekstu). Użyj narzędzia takiego jak WebAIM Contrast Checker.
Większość stron w trybie ciemnym ma za słaby kontrast. Oto jak to naprawić.
Kontrast to stosunek jasności między tekstem a tłem. Wyrażamy go jako wskaźnik od 1:1 (żaden kontrast) do 21:1 (maksymalny kontrast).
Standard WCAG AA wymaga co najmniej 4.5:1 dla zwykłego tekstu i 3:1 dla dużego tekstu. To nie jest sugestia — to minimum dla dostępności.
Nie musisz się domyślać. Możesz użyć:
Praktyczne doświadczenia od tych, którzy wdrożyli tryb ciemny na swoich stronach.
“Na początku myślałem, że tryb ciemny to gimmick. Ale kiedy wdrożyliśmy go z odpowiednim kontrastem, liczba użytkowników wracających do naszej aplikacji wzrosła o 23%. Ludzie rzeczywiście chcą tej opcji.”
“Kontrast był moim największym wyzwaniem. Moje pierwsze kolory były zbyt słabe. Kiedy użyłem narzędzia WebAIM, zobaczyłem dokładnie gdzie się myli. Teraz spędzam 10 minut sprawdzając kontrast zamiast godzin na iteracji.”
“CSS custom properties zminiły sposób, w jaki pracuję. Nie muszę już śledzić heksów w arkuszach kalkulacyjnych. Zmieniam jedną zmienną i wszystko się aktualizuje. To jest magia.”
“Nie myślałam, że preferencja systemowa (prefers-color-scheme) będzie działać tak dobrze. Ustawić jedną regułę CSS i już przeglądarki użytkownika automatycznie wybierają odpowiedni motyw. Bardzo eleganckie rozwiązanie.”
“Dodanie trybu ciemnego zajęło nam dwa tygodnie, ale warto było. Teraz używamy tego samego systemu kolorów dla wszystkich nowych projektów. To standard dla nas.”
“Moja babcia wreszcie może czytać mój blog w nocy. To wydawało się głupie dopóki nie zobaczyłem jej przełączającą się między trybami. Teraz rozumiem dlaczego to takie ważne.”
Wszystko czego potrzebujesz do budowania profesjonalnych interfejsów w trybie ciemnym.
Wklej dwa kolory, sprawdź czy spełniają WCAG AA. Szybko i bezpłatnie.
OdwiedźSprawdzaj kontrast bezpośrednio w Figmie. Plugin, który oszczędza godziny pracy.
OdwiedźRozszerzenie przeglądarki do audytu dostępności. Znajduje problemy z kontrastem automatycznie.
OdwiedźSkanuj dowolną stronę w poszukiwaniu problemów z dostępnością. Otrzymaj szczegółowy raport.
OdwiedźPrzeczytaj nasze szczegółowe przewodniki i zacznij budować. Wszystkie artykuły zawierają kod, który możesz skopiować i użyć od razu.