Układ Świętego Graala z Grid
Zaimplementuj klasyczny układ Świętego Graala z nagłówkiem, stopką, treścią główną i dwoma panelami bocznymi za pomocą CSS Grid.
Układ Świętego Graala z Grid to bezpłatna lekcja CSS Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej CSS Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs CSS Academy zawiera 4 lekcji w sumie.
Czym jest układ Holy Grail
Układ Holy Grail to klasyczny wzorzec projektowania stron internetowych: strona o pełnej wysokości z nagłówkiem, stopką i środkową sekcją z trzema kolumnami (lewy pasek boczny, główna treść, prawy pasek boczny). Jego implementacja za pomocą floatów była niesławnie trudna, natomiast CSS Grid znacznie ją upraszcza.
Definiowanie szablonu siatki
Układ należy zdefiniować za pomocą nazwanych obszarów szablonu i wierszy: grid-template-areas odwzorowuje strukturę wizualną. Trzy kolumny i trzy wiersze (nagłówek rozciągnięty na wszystkie kolumny, stopka rozciągnięta na wszystkie kolumny oraz środkowy wiersz z trzema kolumnami) opisują cały układ w czytelnym diagramie ASCII.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Przypisywanie elementów do obszarów
Każdy element potomny odwołuje się do swojego obszaru za pomocą nazwy: header { grid-area: header }, main { grid-area: main }, nav { grid-area: sidebar }, aside { grid-area: aside }, footer { grid-area: footer }. Grid umieszcza je automatycznie.
Rozciąganie środkowego wiersza
Środkowy wiersz używa 1fr, które wypełnia całą pozostałą wysokość obszaru roboczego po uwzględnieniu nagłówka i stopki o stałej wysokości. Dzięki temu paski boczne i główna treść zawsze rozciągają się, aby wypełnić obszar roboczy — nie trzeba jawnie obliczać wysokości.
Responsywne zwijanie
Na urządzeniach mobilnych należy użyć media query i ponownie zdefiniować grid-template-areas jako jednokolumnowy stos: nagłówek, pasek boczny, główna treść, aside i stopka są ułożone pionowo. Kolejność w DOM pozostaje bez zmian; zmienia się tylko wizualny szablon siatki. Obszary Grid ułatwiają czytelne przebudowywanie układu responsywnego.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Responsywne ukrywanie pasków bocznych
Na tabletach usuń prawy aside i rozszerz główną treść: zdefiniuj ponownie układ jako "header header" "sidebar main" "footer footer" z grid-template-columns: 240px 1fr. Ustaw aside { display: none } albo przenieś go pod główną treść w definicji obszarów.
Odstępy i wewnętrzne marginesy
Dodaj odstęp między ścieżkami siatki za pomocą gap: var(--spacing-4). Padding stosuj wewnątrz poszczególnych obszarów, a nie na kontenerze siatki, aby zachować spójne odstępy. Nagłówek i stopka zazwyczaj otrzymują własny poziomy padding dopasowany do wyrównania maksymalnej szerokości siatki.
Zagnieżdżone siatki
Obszar głównej treści może sam być siatką — na przykład dwukolumnowym układem artykułu i paska bocznego wewnątrz głównego obszaru. Zagnieżdżone siatki tworzą układ treści wewnątrz układu powłoki strony bez złożonych hierarchii klas ani głęboko zagnieżdżonego pozycjonowania.
Przyklejony nagłówek
Przyklej nagłówek za pomocą header { position: sticky; top: 0; z-index: 10; }. W układzie opartym na Gridzie pozycjonowanie sticky elementu potomnego siatki działa zgodnie z oczekiwaniami — nagłówek pozostaje przyklejony, gdy główna treść, pasek boczny i aside przewijają się pod nim.
Przyklejane paski boczne w układzie Holy Grail
Oba paski boczne mogą być przyklejone: nav, aside { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. Pozostają widoczne podczas przewijania głównej treści, tworząc układ z trzema panelami, w którym przewija się tylko środkowy.
Grid czy Flexbox do układu strony
Grid należy stosować do dwuwymiarowych układów powłoki strony, takich jak Holy Grail — Grid doskonale umieszcza elementy jednocześnie w nazwanych wierszach i kolumnach. Flexbox należy stosować do jednowymiarowych układów komponentów (elementy nawigacji w wierszu, zawartość karty w kolumnie) wewnątrz obszarów siatki.
Sprawdzenie wiedzy
Co sprawia, że grid-template-areas jest szczególnie przydatne w responsywnych układach Holy Grail?
Podsumowanie
CSS Grid upraszcza historycznie trudny układ Holy Grail: grid-template-areas nadaje nazwy regionom, 1fr w środkowym wierszu wypełnia wysokość obszaru roboczego, a media queries ponownie definiują mapę obszarów na potrzeby responsywnego zwijania. Przyklejane nagłówki i paski boczne można dodać bez dodatkowej złożoności.
Często zadawane pytania
Czy lekcja „Układ Świętego Graala z Grid” jest bezpłatna?
Tak — pełny tekst „Układ Świętego Graala z Grid” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu CSS Academy, przejdź na CoddyKit PRO. Kurs CSS Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Układ Świętego Graala z Grid”?
Zaimplementuj klasyczny układ Świętego Graala z nagłówkiem, stopką, treścią główną i dwoma panelami bocznymi za pomocą CSS Grid. Ćwiczysz CSS Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć CSS Academy?
Nie wymagamy żadnego doświadczenia. CSS Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.
Ile czasu zajmuje lekcja „Układ Świętego Graala z Grid”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji CSS Academy?
Tak. Każda lekcja CSS Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Układ przyklejonej stopki i panelu bocznego
- Układ Świętego Graala z Grid
- Układ masonry: podejścia CSS i JavaScript
- Projektowanie intrynsyczne: rozmiar zależny od treści