CSS Academy · Lektion

Layout med klistrad sidfot och sidofält

Bygg layouter med klistrade sidfötter och sidofält som sträcker sig över hela höjden med Grid eller Flexbox.

Lektion 1 av 413 steg

Layout med klistrad sidfot och sidofält är en gratis lektion i CSS Academy på CoddyKit. Detta är lektion 1 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för CSS Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i CSS Academy innehåller totalt 4 lektioner.

Problemet med en klistrad sidfot

En klistrad sidfot ligger längst ned i viewporten när innehållet är kort, men flyttas nedåt när innehållet blir längre. Den historiska utmaningen har varit att få sidfoten att ligga kvar längst ned utan att känna till innehållets höjd eller använda JavaScript.

Klistrad sidfot med Flexbox

Den enklaste moderna lösningen är body { display: flex; flex-direction: column; min-height: 100vh; } och main { flex: 1; }. Huvudinnehållet växer och fyller det tillgängliga utrymmet, vilket skjuter sidfoten längst ned oavsett innehållets längd.

Klistrad sidfot med Grid

Alternativet med CSS Grid är body { display: grid; grid-template-rows: auto 1fr auto; min-height: 100vh; }. Sidhuvudet får automatisk höjd, main får 1fr och fyller det återstående utrymmet, och sidfoten får automatisk höjd. Det är rent och tydligt — radmallen visar klart layoutens avsikt.

Sidfot med position: sticky

position: sticky; bottom: 0 fäster sidfoten vid viewportens nederkant under rullning, men bara när rullningskontexten tillåter det. Det fungerar för sidfötter inuti en rullande behållare, men är mindre lämpligt för klistrade sidfötter på sidnivå, där Flexbox eller Grid blir renare.

Sidofältslayout med Flexbox

En layout med sidofält och huvudinnehåll kan byggas så här: wrapper { display: flex; }, sidebar { width: 280px; flex-shrink: 0; }, main { flex: 1; min-width: 0; }. min-width: 0 på main förhindrar att flexobjekt flödar ut ur sin behållare när de innehåller brett innehåll.

Sidofältslayout med Grid

Sidofält med Grid: wrapper { display: grid; grid-template-columns: 280px 1fr; gap: var(--spacing-4); }. Sidofältets kolumn har fast bredd och innehållskolumnen fyller det återstående utrymmet. Lägg till en rubrikrad med grid-template-rows: auto 1fr och låt sidofältet sträcka sig över båda raderna.

Responsivt sidofält

På mobila enheter kan sidofältet placeras ovanför eller under huvudinnehållet: använd en media query för att växla från en layout med gridkolumner till en stack med en enda kolumn. Alternativt kan ni använda grid-template-columns: min(280px, 30%) 1fr för ett flexibelt sidofält som krymper på mindre viewportar.

Klistrat sidofält

Gör sidofältet rullningsbart separat med sidebar { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. Sidofältet förblir synligt medan huvudinnehållet rullas, vilket passar bra för navigering eller innehållsförteckningar på sidor med långt innehåll.

Infällbart sidofält

Ett infällbart sidofält växlar mellan ett tillstånd med full bredd och ett tillstånd som bara visar ikoner. Använd en CSS-egenskap för sidofältets bredd: --sidebar-width: 280px på wrapper och växla till 64px med hjälp av en klass. Övergångar animerar breddändringen mjukt.

Överflödande innehåll i fixerade sidofält

Ett sidofält med fast position (position: fixed; left: 0; top: 0; height: 100vh) kräver att huvudinnehållet förskjuts med sidofältets bredd: main { margin-left: 280px }. På mobila enheter skjuts sidofältet ovanpå innehållet och förses med en stängningsknapp och ett bakgrundslager.

Tillgänglighet för sidofält

Markera navigeringssidofält med <nav> och aria-label="Sidebar navigation". Infällbara sidofält behöver en tillgänglig växlingsknapp med aria-expanded och aria-controls. Hopplänkar hjälper tangentbordsanvändare att hoppa över sidofält och nå huvudinnehållet.

Kunskapskontroll

Varför måste min-width: 0 anges på flexobjektet för huvudinnehållet i en sidofältslayout?

Sammanfattning

Flexbox med flex: 1 på main, eller ett grid med tre rader, ger rena klistrade sidfötter med minimal CSS. Sidofältslayouter använder fasta eller flexibla kolumndefinitioner med responsiva brytpunkter för att fällas ihop på mobila enheter. Klistrade sidofält, infällbara bredder och tillgängliga ARIA-attribut kompletterar produktionsklara mönster för sidofält och sidfötter.

Gratis att börja

Lär dig CSS med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
40
Lektioner
159

Vanliga frågor

Är lektionen ”Layout med klistrad sidfot och sidofält” gratis?

Ja – hela texten till ”Layout med klistrad sidfot och sidofält” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i CSS Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i CSS Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Layout med klistrad sidfot och sidofält”?

Bygg layouter med klistrade sidfötter och sidofält som sträcker sig över hela höjden med Grid eller Flexbox. Ni övar på CSS Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig CSS Academy?

Du behöver inga förkunskaper. Utbildningen i CSS Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 1 av 4.

Hur lång tid tar lektionen ”Layout med klistrad sidfot och sidofält”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här CSS Academy-lektionen?

Ja. Varje CSS Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Layout med klistrad sidfot och sidofält
  2. Holy Grail-layout med Grid
  3. Masonry-layout: CSS- och JS-metoder
  4. Intrinsic design: innehållsdriven storleksanpassning
← Tillbaka till CSS Academy