Holy Grail-layout med Grid
Implementer den klassiske Holy Grail-layouten med topptekst, bunntekst, hovedinnhold og to sidestolper ved hjelp av CSS Grid.
Holy Grail-layout med Grid er en gratis leksjon i CSS Academy på CoddyKit. Dette er leksjon 2 av 4. Du kan lese hele leksjonen gratis nedenfor – og deretter øve praktisk i nettleseren med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i CSS Academy, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i CSS Academy inneholder totalt 4 leksjoner.
Hva er Holy Grail-layouten
Holy Grail-layouten er et klassisk webdesignmønster: en side som fyller hele høyden, med topptekst, bunntekst og en midtseksjon med tre kolonner (venstre sidepanel, hovedinnhold og høyre sidepanel). Den var beryktet vanskelig å lage med floats, men CSS Grid gjør den enkel.
Definisjon av grid-mal
Definer oppsettet med navngitte malområder og rader: grid-template-areas beskriver den visuelle strukturen. Tre kolonner og tre rader (toppteksten strekker seg over alle kolonnene, bunnteksten strekker seg over alle kolonnene, og midten har tre kolonner) beskriver hele oppsettet i et lettlest ASCII-diagram.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Tilordne elementer til områder
Hvert underordnet element refererer til området sitt ved navn: header { grid-area: header }, main { grid-area: main }, nav { grid-area: sidebar }, aside { grid-area: aside }, footer { grid-area: footer }. Grid plasserer dem automatisk.
Utvidelse av midtraden
Midtraden bruker 1fr, som fyller all gjenværende høyde i visningsområdet etter toppteksten og bunnteksten med fast høyde. Dette sikrer at sidepanelene og hovedinnholdet alltid strekker seg og fyller visningsområdet — uten behov for eksplisitte høydeberegninger.
Responsiv sammenklapping
På mobil kan du bruke en media query til å definere grid-template-areas på nytt som en stabel med én kolonne: topptekst, sidepanel, hovedinnhold, aside og bunntekst stablet vertikalt. DOM-rekkefølgen beholdes; bare det visuelle grid-malet endres. Grid-områder gjør det enkelt å lese hvordan oppsettet omstruktureres responsivt.
<header>Header</header>
<div class="sidebar">Sidebar</div>
<main>Main</main>
<aside>Aside</aside>
<footer>Footer</footer>Skjule sidepaneler responsivt
På nettbrett kan du fjerne høyre sidepanel og utvide hovedinnholdet: definer oppsettet på nytt som "header header" "sidebar main" "footer footer" med grid-template-columns: 240px 1fr. Angi aside { display: none }, eller flytt det under hovedinnholdet i områdeangivelsen.
Mellomrom og padding
Legg til mellomrom mellom grid-sporene med gap: var(--spacing-4). Bruk padding inne i hvert område i stedet for på grid-beholderen, slik at avstanden blir konsekvent. Toppteksten og bunnteksten får vanligvis sin egen horisontale padding, tilpasset gridets maksbredde.
Nestede grid-oppsett
Hovedinnholdsområdet kan selv være et grid — for eksempel en artikkel med to kolonner og et sidepanel inne i hovedområdet. Nestede grid-oppsett lager innholdsoppsett innenfor sidens skall uten komplekse klassehierarkier eller dypt nestede posisjoneringer.
Sticky topptekst
Gjør toppteksten sticky: header { position: sticky; top: 0; z-index: 10; }. I et grid-oppsett fungerer sticky-posisjonering på et grid-underordnet element som forventet — toppteksten blir stående mens hovedinnholdet, sidepanelet og aside ruller under den.
Sticky sidepaneler i Holy Grail-layouten
Begge sidepanelene kan være sticky: nav, aside { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. De forblir synlige mens hovedinnholdet ruller, slik at du får et oppsett med tre paneler der bare midtpanelet ruller.
Grid kontra Flexbox for sideoppsett
Bruk Grid for todimensjonale oppsett av hele siden, som Holy Grail — Grid er spesielt godt egnet til å plassere elementer i navngitte rader og kolonner samtidig. Bruk Flexbox for endimensjonale komponentoppsett (navigasjonselementer på en rad, kortinnhold i en kolonne) inne i grid-områdene.
Kunnskapssjekk
Hva gjør grid-template-areas spesielt nyttig for responsive Holy Grail-oppsett?
Sammendrag
CSS Grid gjør den historisk vanskelige Holy Grail-layouten enkel: grid-template-areas navngir områdene, 1fr i midtraden fyller høyden i visningsområdet, og media queries definerer områdekartet på nytt for responsiv sammenklapping. Sticky topptekster og sidepaneler kan legges oppå uten ekstra kompleksitet.
Lær deg CSS med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 40
- Leksjoner
- 159
Ofte stilte spørsmål
Er leksjonen «Holy Grail-layout med Grid» gratis?
Ja – hele teksten i «Holy Grail-layout med Grid» er gratis å lese her på nettet. For å øve interaktivt med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt, og for å låse opp resten av CSS Academy-kurset, kan du oppgradere til CoddyKit PRO. Kurset i CSS Academy inneholder totalt 4 leksjoner.
Hva lærer jeg i «Holy Grail-layout med Grid»?
Implementer den klassiske Holy Grail-layouten med topptekst, bunntekst, hovedinnhold og to sidestolper ved hjelp av CSS Grid. Du øver på CSS Academy med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med CSS Academy?
Ingen tidligere erfaring er nødvendig. CSS Academy på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Holy Grail-layout med Grid»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne CSS Academy-leksjonen?
Ja. Alle CSS Academy-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Layout med klebrig bunntekst og sidestolpe
- Holy Grail-layout med Grid
- Masonry-layout: CSS- og JS-tilnærminger
- Intrinsisk design: innholdsbasert dimensjonering