← Level 2 – Zauberer

Lektion 4 von 8 ⏱ 30 Minuten

Dunkelmodus für deine Website

Ein Hell/Dunkel-Themenwechsler, den sich die Website merkt – auch nach dem Schließen des Browsers.

Wie es funktionieren wird

Dunkelmodus ist ein Zauber aus zwei Teilen:

  1. CSS bereitet ein zweites „Kostüm” vor – Regeln, die nur gelten, wenn die Seite die Klasse dark hat.
  2. JavaScript fügt die Klasse beim Klicken hinzu oder entfernt sie. Und es schreibt deine Wahl ins Gedächtnis des Browsers, damit es morgen noch gilt.

Zeig mir das: das dunkle Kostüm in CSS

Füge das ans Ende von style.css an:

body.dark {
  background-color: #1c1917;
  color: #f5f0ea;
}

body.dark h1,
body.dark h2 {
  color: #93c5fd;
}

body.dark .card {
  background-color: #292524;
  color: #f5f0ea;
}

Lies es so: „Wenn body die Klasse dark hat, gelten diese Regeln.” Ohne die Klasse wird nichts davon benutzt.

💡

Pass die Farben an deine Website an – geh durch dein CSS und überleg dir für jede helle Farbe eine dunkle Schwester. Die Regel bleibt gleich: dunkler Hintergrund → heller Text.

Zeig mir das: der Schalter in JavaScript

Füge einen Button in den Header ein (innerhalb von <nav>):

<button id="switch">🌙</button>

Und in script.js:

const switchButton = document.getElementById("switch");

// When the page loads: remember what the visitor picked last time
if (localStorage.getItem("mode") === "dark") {
  document.body.classList.add("dark");
  switchButton.textContent = "☀️";
}

switchButton.addEventListener("click", () => {
  document.body.classList.toggle("dark");

  if (document.body.classList.contains("dark")) {
    localStorage.setItem("mode", "dark");
    switchButton.textContent = "☀️";
  } else {
    localStorage.setItem("mode", "light");
    switchButton.textContent = "🌙";
  }
});

Drei neue Sachen:

Jetzt du 💪

  1. Füge deinem eigenen style.css ein dunkles Kostüm hinzu – geh alle deine Farben durch (Hintergrund, Header, Karten, Footer, Badges) und gib ihnen dunkle Versionen unter body.dark.
  2. Füge auf jeder Seite einen Schalter-Button in den Header ein und den Code in script.js.
  3. Probier es aus: Wechsel in den Dunkelmodus, schließ den Browser, öffne die Website wieder – sie sollte direkt im Dunkelmodus starten.
Beispiel für ein vollständigeres dunkles Kostüm (Farben an dein Projekt anpassen)
body.dark {
  background-color: #1c1917;
  color: #f5f0ea;
}

body.dark h1,
body.dark h2,
body.dark h3 {
  color: #93c5fd;
}

body.dark header {
  background-color: #0f172a;
}

body.dark .card {
  background-color: #292524;
  color: #f5f0ea;
  box-shadow: none;
}

body.dark footer {
  background-color: #0f172a;
}

body.dark a {
  color: #93c5fd;
}

Kontrolliere dich selbst: Ein Klick auf 🌙 macht die Website dunkel (und das Symbol wechselt zu ☀️), ein Klick auf ☀️ macht sie wieder hell. Nach dem Schließen und Wiederöffnen des Browsers merkt sich die Website deine Wahl. Das ist ein Feature, das viele „Erwachsenen”-Websites nicht mal haben!

Das nimmst du aus dieser Lektion mit