Holy-Grail-Layout mit Grid
Implementieren Sie das klassische Holy-Grail-Layout mit Header, Footer, Main-Bereich und zwei Sidebars mithilfe von CSS Grid.
Holy-Grail-Layout mit Grid ist eine kostenlose CSS Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des CSS Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der CSS Academy-Kurs umfasst insgesamt 4 Lektionen.
Was ist das Holy-Grail-Layout?
Das Holy-Grail-Layout ist ein klassisches Webdesign-Muster: eine Seite über die volle Höhe mit Header, Footer und einem mittleren Bereich mit drei Spalten (linke Sidebar, Hauptinhalt, rechte Sidebar). Mit Floats war es berüchtigt schwierig; CSS Grid macht es trivial.
Definition der Grid-Vorlage
Definieren Sie das Layout mit benannten Template-Bereichen und Zeilen: grid-template-areas bildet die visuelle Struktur ab. Drei Spalten und drei Zeilen (der Header erstreckt sich über alle, der Footer ebenfalls, der mittlere Bereich enthält drei Spalten) bilden das gesamte Layout in einem gut lesbaren ASCII-Diagramm ab.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Elemente Bereichen zuweisen
Jedes Kindelement verweist über seinen Namen auf seinen Bereich: header { grid-area: header }, main { grid-area: main }, nav { grid-area: sidebar }, aside { grid-area: aside }, footer { grid-area: footer }. Grid platziert sie automatisch.
Erweiterung der mittleren Zeile
Die mittlere Zeile verwendet 1fr, das die gesamte verbleibende Viewport-Höhe nach dem Header und Footer mit fester Höhe ausfüllt. Dadurch erstrecken sich Sidebars und Hauptinhalt immer über die gesamte Viewport-Höhe – explizite Höhenberechnungen sind nicht erforderlich.
Responsives Einklappen
Definieren Sie auf mobilen Geräten mit einer Media Query grid-template-areas als einspaltigen Stapel neu: Header, Sidebar, main, aside, footer werden vertikal angeordnet. Die DOM-Reihenfolge bleibt erhalten; nur das visuelle Grid-Template ändert sich. Grid-Bereiche machen die responsive Umstrukturierung übersichtlich.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Sidebars responsiv ausblenden
Entfernen Sie auf Tablets die rechte aside und erweitern Sie main: Definieren Sie "header header" "sidebar main" "footer footer" mit grid-template-columns: 240px 1fr neu. Setzen Sie aside { display: none } oder verschieben Sie aside in der Bereichsdefinition unter main.
Abstände und Innenabstände
Fügen Sie einen Abstand zwischen den Grid-Tracks hinzu: gap: var(--spacing-4). Wenden Sie Padding innerhalb jedes Bereichs statt am Grid-Container an, damit die Abstände konsistent bleiben. Header und Footer erhalten üblicherweise eigenes horizontales Padding, das an die Ausrichtung der maximalen Breite des Grids angepasst ist.
Verschachtelte Grids
Der Hauptinhaltsbereich kann selbst ein Grid sein – ein zweispaltiger Artikel mit Sidebar innerhalb des main-Bereichs. Verschachtelte Grids erzeugen ein Inhaltslayout innerhalb des Seitenlayouts, ohne komplexe Klassenhierarchien oder tief verschachtelte Positionierung.
Sticky Header
Der Header wird sticky: header { position: sticky; top: 0; z-index: 10; }. In einem Grid-Layout funktioniert die Sticky-Positionierung eines Grid-Kindelements wie erwartet – der Header bleibt haften, während main, sidebar und aside darunter scrollen.
Sticky Sidebars im Holy-Grail-Layout
Beide Sidebars können sticky sein: nav, aside { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. Sie bleiben sichtbar, während der Hauptinhalt scrollt – so entsteht ein Layout mit drei Panels, in dem nur der mittlere Bereich scrollt.
Grid vs. Flexbox für Seitenlayouts
Verwenden Sie Grid für zweidimensionale Seitenlayouts wie das Holy-Grail-Layout – Grid ist besonders geeignet, um Elemente gleichzeitig in benannten Zeilen und Spalten zu platzieren. Verwenden Sie Flexbox für eindimensionale Komponentenlayouts (Navigationselemente in einer Zeile, Karteninhalt in einer Spalte) innerhalb der Grid-Bereiche.
Wissenscheck
Warum ist grid-template-areas besonders nützlich für responsive Holy-Grail-Layouts?
Zusammenfassung
CSS Grid macht das historisch schwierige Holy-Grail-Layout trivial: grid-template-areas benennt Bereiche, 1fr in der mittleren Zeile füllt die Viewport-Höhe aus, und Media Queries definieren die Bereichszuordnung für das responsive Einklappen neu. Sticky Header und Sidebars lassen sich ohne zusätzliche Komplexität ergänzen.
Häufig gestellte Fragen
Ist die Lektion „Holy-Grail-Layout mit Grid“ kostenlos?
Ja — der vollständige Text von „Holy-Grail-Layout mit Grid“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des CSS Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der CSS Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Holy-Grail-Layout mit Grid“?
Implementieren Sie das klassische Holy-Grail-Layout mit Header, Footer, Main-Bereich und zwei Sidebars mithilfe von CSS Grid. Du übst CSS Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um CSS Academy zu starten?
Keine Vorkenntnisse erforderlich. CSS Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Holy-Grail-Layout mit Grid“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser CSS Academy-Lektion Code schreiben und ausführen?
Ja. Jede CSS Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Layout mit Sticky-Footer und Sidebar
- Holy-Grail-Layout mit Grid
- Masonry-Layout: CSS- und JS-Ansätze
- Intrinsisches Design: inhaltsgesteuerte Größen