🚀 Tag 1

Grundstruktur & Basis-CSS

Erste visuelle Grundlagen für deinen Blog schaffen

🎯 Ziel: Titelbereich, Hero-Sektion und Fließtext so gestalten, dass deine Seite nicht mehr roh wirkt, sondern bereits wie ein bewusst gestaltetes Webprojekt.
1.1

Erklärung: Der Titelbereich ist oft der erste Bereich, den Besucher wahrnehmen. Deshalb sollte dein <h1> groß, klar und dominant wirken. Der Untertitel ergänzt den Haupttitel, soll ihn aber optisch nicht überholen.

📍 Wo verwendest du das?

Im Header deiner index.html, meistens direkt im obersten sichtbaren Bereich der Seite.

🛠 Was setzt du um?

Du vergibst Klassen im HTML und schreibst dafür passende CSS-Regeln in deiner style.css.

Beispiel – HTML
<header>
  <h1 class="title">Mein Mini-Blog</h1>
  <p class="subtitle">Ein einfaches Design</p>
</header>
Beispiel – CSS
.title {
  font-size: 3rem;
  font-weight: 800;
  color: #1f2a44;
  margin-bottom: 0.5rem;
}

.subtitle {
  font-size: 1.1rem;
  color: #667085;
  margin-top: 0;
}
💡 Anleitung: Falls du bisher nur ein schlichtes <h1> ohne Klasse hast, ergänze zuerst die Klassen .title und .subtitle. Danach setzt du die CSS-Regeln so, dass Haupttitel und Untertitel klar voneinander getrennt wirken.

✅ Akzeptanz: Der Titel fällt sofort ins Auge. Der Untertitel unterstützt den Einstieg, bleibt aber bewusst untergeordnet.

1.2

Erklärung: Die Hero-Sektion ist dein Einführungsblock. Sie soll sich vom restlichen Fließtext abheben – durch Fläche, Abstände, sanfte Hintergrundfarbe und eine begrenzte Breite.

📍 Wo verwendest du das?

In einer einleitenden Section direkt unter dem Header, die Besucher in das Thema deiner Seite einführt.

🎨 Warum ist das wichtig?

Weil dadurch sofort sichtbar wird, dass dieser Bereich inhaltlich wichtiger ist als normaler Fließtext.

Beispiel – HTML
<section class="hero">
  <h2>Willkommen auf meinem Blog</h2>
  <p>Hier schreibe ich über Design, CSS und moderne Webgestaltung.</p>
</section>
Beispiel – CSS
.hero {
  background-color: #e7f0ff;
  padding: 3rem;
  max-width: 750px;
  margin: 0 auto;
  border-radius: 20px;
}
💡 Anleitung: Setze die Klasse .hero auf die gesamte <section>, nicht nur auf einen Absatz. So steuerst du Hintergrund, Padding und Breite des kompletten Blocks.

✅ Akzeptanz: Die Hero-Sektion wirkt wie ein eigenständiger Bereich, der den Einstieg in die Seite übernimmt und nicht mit dem restlichen Text verschwimmt.

1.3

Erklärung: Bevor du einzelne Spezialbereiche stylst, brauchst du gute Grundregeln für normalen Text. Das betrifft Schriftgröße, Zeilenhöhe, Textfarbe, Schriftfamilie und sinnvolle Absatzabstände.

Beispiel – CSS
body {
  font-size: 1.125rem;
  line-height: 1.6;
  color: #4a4a4a;
  font-family: 'Inter', sans-serif;
}

p {
  max-width: 750px;
  margin-bottom: 1rem;
}
💡 Anleitung: Diese Regeln gehören eher weit nach oben in deine CSS-Datei, weil sie globale Standards setzen. Wenn dein Fließtext zu breit ist, ergänze max-width für Absätze oder Container.

✅ Akzeptanz: Längere Texte lassen sich angenehm lesen. Zeilen sind nicht zu gedrängt und Absätze haben saubere Abstände.

1.4

Erklärung: Ein Zitat soll sich deutlich vom Standardtext abheben. Dafür nutzt du häufig hellen Hintergrund, einen farbigen Seitenrand und einen anderen Schriftstil.

Beispiel – HTML
<blockquote class="blockquote">
  „Design ist nicht nur, wie es aussieht. Design ist, wie es funktioniert.“
  <br>
  <cite>– Steve Jobs</cite>
</blockquote>
Beispiel – CSS
.blockquote {
  background-color: #f8f9fa;
  border-left: 4px solid #1a73e8;
  padding: 2rem 1.5rem;
  margin: 2rem auto;
  font-style: italic;
  border-radius: 16px;
}

cite {
  color: #6c757d;
  font-size: 0.9em;
}

✅ Akzeptanz: Das Zitat ist klar als besonderes Element erkennbar. Die Quelle ist sichtbar, aber dezent gestaltet.

1.5

Erklärung: Ein Button ist eines der wichtigsten UI-Elemente. Er braucht Kontrast, Polsterung, Radius, klare Zustände und ein Verhalten, das auf Hover und Fokus reagiert.

Beispiel – HTML
<button class="btn">Mehr erfahren</button>
Beispiel – CSS
.btn {
  padding: 12px 24px;
  border-radius: 10px;
  background-color: #1a73e8;
  color: white;
  font-weight: bold;
  border: none;
  cursor: pointer;
}

.btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 24px rgba(26, 115, 232, 0.3);
}

.btn:focus {
  outline: 3px solid rgba(26, 115, 232, 0.35);
  outline-offset: 2px;
}

✅ Akzeptanz: Der Button wirkt sofort klickbar, reagiert sichtbar auf Hover und hat einen klaren Fokuszustand für Tastatur-Navigation.

🎨 Tag 2

Typografie, Farben & Design-System

Deine Seite in eine visuelle Sprache überführen

🎯 Ziel: Eine konsistente Hierarchie für Überschriften, Texte, Farben, Links und Interaktionen schaffen, damit die Seite wie aus einem Guss wirkt.
2.1

Erklärung: Besucher sollen schon beim Überfliegen erkennen, was Haupttitel, Abschnittsüberschrift und Zwischenüberschrift ist. Das erreichst du über Größe, Gewicht und Abstand.

Beispiel – CSS
h1 {
  font-size: 2.5rem;
  font-weight: 700;
  line-height: 1.2;
}

h2 {
  font-size: 2rem;
  font-weight: 600;
  line-height: 1.3;
}

h3,
h4 {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.4;
}

✅ Akzeptanz: Die Hierarchie ist auch ohne Farben gut erkennbar. H1 ist am stärksten, H4 am zurückhaltendsten.

2.2

Erklärung: Ein kleines Design-System beginnt mit wiederverwendbaren Farbwerten. Mit CSS-Variablen in :root definierst du deine wichtigsten Töne zentral.

Beispiel – CSS
:root {
  --primary: #1a73e8;
  --text-primary: #4a4a4a;
  --bg-soft: #f5f8ff;
}

.nav-link,
a.btn {
  color: var(--primary);
  text-decoration: none;
}
💡 Anleitung: Verwende dieselbe Primärfarbe nicht nur für Links, sondern später auch für Buttons, Badges oder Akzente. So fühlt sich dein Projekt zusammenhängend an.

✅ Akzeptanz: Wichtige Links und interaktive Elemente folgen einer klaren Farblogik und sehen nicht zufällig unterschiedlich aus.

2.3

Erklärung: Nicht nur die Schriftgröße macht Text lesbar. Auch Breite, Zeilenhöhe, Abstände und Listeneinzüge tragen wesentlich dazu bei, dass Inhalte ruhig und professionell wirken.

Beispiel – CSS
body,
p {
  line-height: 1.6;
  max-width: 750px;
}

ul,
ol {
  padding-left: 1.5rem;
}

p + p {
  margin-top: 1rem;
}

✅ Akzeptanz: Fließtext bleibt angenehm lesbar, Listen wirken geordnet und längere Inhalte sind visuell nicht anstrengend.

2.4

Erklärung: Meta-Informationen wie Datum, Autor oder Kategorie sind hilfreich, sollen aber nicht mit den eigentlichen Inhalten konkurrieren. Zitate dürfen dagegen etwas stärker auffallen.

Beispiel – HTML
<article>
  <header>
    <p class="meta">Veröffentlicht am 10.04.2023</p>
  </header>

  <blockquote class="citation">
    „Ein inspirierendes Zitat.“
  </blockquote>
</article>
Beispiel – CSS
.meta {
  font-size: 0.95rem;
  color: #7a8599;
}

.citation {
  font-size: 1.1rem;
  color: #1f2a44;
}

✅ Akzeptanz: Meta-Texte sind klar als Zusatzinfo lesbar, während Zitate weiterhin einen hervorgehobenen Charakter behalten.

2.5

Erklärung: Mit einer Webfont wie Inter bekommst du sofort einen moderneren Eindruck. Die Einbindung erfolgt im <head> deiner HTML-Datei, die Nutzung danach über CSS.

Beispiel – HTML
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&display=swap" rel="stylesheet">
Beispiel – CSS
body {
  font-family: 'Inter', sans-serif;
}
💡 Anleitung: Der Link gehört in den <head>, nicht in den Body. Die CSS-Regel für font-family kommt an einen zentralen Ort in deine Typografie- oder Grundregeln.

✅ Akzeptanz: Die Seite verwendet durchgehend die gewünschte Schriftart und wirkt dadurch einheitlicher.

2.6

Erklärung: Hover-, Fokus-, Active- und Visited-Zustände helfen Nutzern zu verstehen, welche Elemente anklickbar sind und wie sie bereits benutzt wurden.

Beispiel – CSS
a:hover,
button:focus,
a.active {
  text-decoration: underline;
}

a:visited {
  color: #805b9e;
}

✅ Akzeptanz: Interaktive Zustände sind sichtbar, konsistent und verbessern die Nutzbarkeit der Seite.

🧱 Tag 3

Selektoren & Wiederverwendung

Weniger Dopplungen, klarere Struktur, sauberere CSS-Logik

🎯 Ziel: Dein HTML klar strukturieren und dein CSS so organisieren, dass sich wiederkehrende Muster nicht ständig neu schreiben müssen.
3.1

Erklärung: Wenn du Header, Main, Sidebar und Footer sauber benennst, kannst du ihre Rolle im Layout leichter verstehen und gezielter gestalten.

Beispiel – HTML
<header class="header">...</header>
<main class="main">...</main>
<aside class="sidebar">...</aside>
<footer class="footer">...</footer>
💡 Anleitung: Prüfe zuerst deine HTML-Struktur. Falls diese Bereiche schon vorhanden sind, ergänze Klassen. Falls nicht, formatiere dein Grundgerüst so um, dass die Seite semantisch und logisch aufgebaut ist.

✅ Akzeptanz: Schon im HTML ist klar erkennbar, welche Elemente zu welchem Bereich der Seite gehören.

3.2

Erklärung: Wenn mehrere Artikel gleich aussehen sollen, bekommen sie eine gemeinsame Klasse wie .card. So baust du ein wiederverwendbares Muster auf.

Beispiel – CSS
.card {
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  padding: 20px;
  background: #fff;
}

✅ Akzeptanz: Mehrere Artikel wirken wie ein zusammengehöriges Kartensystem und nicht wie zufällige Einzelelemente.

3.3

Erklärung: Gruppenselektoren sparen Wiederholungen, indem du ähnliche Elemente in einer Regel zusammenfasst. Dadurch wird deine CSS-Datei kürzer und leichter wartbar.

Beispiel – CSS
.h1,
.h2 {
  font-weight: 600;
}

a.button,
a.nav-link {
  color: var(--primary);
}

✅ Akzeptanz: Dein CSS enthält weniger doppelte Regeln und wirkt aufgeräumter.

3.4

Erklärung: Mit Nachfahren-Selektoren kannst du Elemente im Kontext ansprechen, zum Beispiel nur Links in der Sidebar oder nur Bilder innerhalb eines Artikels.

Beispiel – CSS
aside ul li a {
  text-decoration: underline;
}

article header p {
  font-size: 0.9rem;
  color: #7f8c8d;
}

article img {
  width: 100%;
  display: block;
}

✅ Akzeptanz: Elemente werden nicht mehr global und unspezifisch gestylt, sondern gezielt an der richtigen Stelle.

3.5

Erklärung: Ein besonders wichtiger Artikel oder Beitrag darf zusätzlich zur normalen Card-Klasse noch eine Hervorhebung bekommen, zum Beispiel über Schatten oder einen Akzentrand.

Beispiel – CSS
.featured {
  box-shadow: 0 12px 36px rgba(26, 115, 232, 0.3);
  border-left: 4px solid #1a73e8;
}

✅ Akzeptanz: Die Featured-Karte fällt sichtbar mehr auf als die anderen Karten, bleibt aber gestalterisch im selben System.

📐 Tag 4

Box-Modell, Abstände & Positionierung

Die Seite rhythmisch, räumlich und layouttechnisch sauber machen

🎯 Ziel: Präzise Abstände, klare Layout-Beziehungen und bewusst gesetzte Positionierung für wichtige Elemente wie Bilder, Cards und Newsletter-Bereiche.
4.1

Erklärung: Mit Padding, Margin, Radius und Schatten definierst du, wie viel Luft eine Karte nach innen und außen bekommt. Genau das entscheidet oft darüber, ob ein Design unruhig oder hochwertig wirkt.

Beispiel – CSS
.card {
  padding: 20px;
  margin: 20px 0;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

✅ Akzeptanz: Kein Inhalt klebt am Rand, Karten haben nachvollziehbare Innenabstände und ausreichend Abstand zueinander.

4.2

Erklärung: Nutze wiederkehrende Abstände zwischen Hero, Artikeln, Sidebar und Footer. Eine kleine Spacing-Skala schafft Ruhe und Wiedererkennung im Layout.

Beispiel – CSS
.hero {
  margin-bottom: 32px;
}

.sidebar {
  margin-top: 24px;
}

✅ Akzeptanz: Die Seite wirkt nicht zufällig zusammengesetzt, sondern wie ein bewusst geordnetes Gesamtsystem.

4.3

Erklärung: Bilder sollen nie aus ihrem Container herauslaufen. Gleichzeitig sollen sie mit Radius und Abstand optisch zu den Textbereichen passen.

Beispiel – CSS
article img {
  width: 100%;
  display: block;
  border-radius: 8px;
  margin-bottom: 1rem;
}

✅ Akzeptanz: Bilder passen sich sauber an ihre Breite an, fügen sich ins Layout ein und stören den Lesefluss nicht.

4.4

Erklärung: Manche Bereiche sollen sichtbar bleiben, weil sie Handlungsaufforderungen enthalten. Dafür kannst du sticky oder fixed einsetzen – je nachdem, ob der Bereich im Fluss bleibt oder fest am Viewport klebt.

Beispiel – CSS
.newsletter {
  position: sticky;
  top: 0;
  width: 100%;
  background: #ffffff;
  padding: 1rem;
}
💡 Anleitung: sticky eignet sich gut, wenn das Element innerhalb des Layouts mitscrollen und nur zeitweise haften soll. fixed ist stärker und sollte nur bewusst eingesetzt werden.

✅ Akzeptanz: Der Newsletter-Block ist sichtbar, aber nimmt dem eigentlichen Inhalt nicht die Aufmerksamkeit.

4.5

Erklärung: Jetzt werden Radius-Werte, Schatten, Farben, Überschriftenabstände und Button-Stile vereinheitlicht. Genau hier entsteht der Eindruck von Konsistenz und Qualität.

Beispiel – CSS
.card,
.btn {
  border-radius: 12px;
}

.btn {
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

✅ Akzeptanz: Alle Designelemente wirken wie Teil eines gemeinsamen Systems und nicht wie einzeln zusammengestellte Lösungen.