Layout med sticky footer og sidebar
Byg layouts med sticky footers og sidebars, der strækker sig i fuld højde med Grid eller Flexbox.
Layout med sticky footer og sidebar er en gratis CSS Academy-lektion på CoddyKit. Dette er lektion 1 af 4. Du kan læse hele lektionen gratis nedenfor — og derefter øve dig praktisk i browseren med en indbygget kodeeditor og en AI-vejleder, der er tilgængelig døgnet rundt. Den er en del af læringsforløbet i CSS Academy, og dine fremskridt synkroniseres på tværs af nettet og CoddyKit-appen. CSS Academy-kurset indeholder 4 lektioner i alt.
Problemet med sticky-sidefoden
En sticky-sidefod bliver ved med at være nederst i visningsområdet, når indholdet er kort, men skubbes ned sammen med indholdet, når det er langt. Den historiske udfordring har været at få sidefoden til at sidde fast uden at kende indholdets højde eller bruge JavaScript.
Sticky-sidefod med Flexbox
Den enkleste moderne løsning er: body { display: flex; flex-direction: column; min-height: 100vh; } og main { flex: 1; }. Hovedindholdet vokser, så det udfylder den tilgængelige plads, og skubber sidefoden ned i bunden uanset indholdets længde.
Sticky-sidefod med Grid
Et alternativ med CSS Grid er: body { display: grid; grid-template-rows: auto 1fr auto; min-height: 100vh; }. Sidehovedet får automatisk højde, hovedindholdet får 1fr og udfylder den resterende plads, og sidefoden får automatisk højde. Det er rent og tydeligt — rækkeskabelonen viser klart hensigten med layoutet.
Sidefod med position: sticky
position: sticky; bottom: 0 på sidefoden fastgør den til bunden af visningsområdet under rulning, men kun når dens rullekontekst tillader det. Det fungerer for sidefødder i en rullende beholder, men er mindre velegnet til sticky-sidefødder på sideniveau, hvor Flexbox eller Grid giver et renere layout.
Sidebjælkelayout med Flexbox
Et layout med sidebjælke og hovedindhold: wrapper { display: flex; }, sidebar { width: 280px; flex-shrink: 0; }, main { flex: 1; min-width: 0; }. min-width: 0 på hovedindholdet forhindrer flex-elementer i at løbe over deres beholder, når de indeholder bredt indhold.
Sidebjælkelayout med Grid
Sidebjælke med Grid: wrapper { display: grid; grid-template-columns: 280px 1fr; gap: var(--spacing-4); }. Sidebjælkekolonnen har fast bredde, mens indholdskolonnen udfylder den resterende plads. Tilføj en række til sidehovedet med grid-template-rows: auto 1fr, og lad sidebjælken spænde over begge rækker.
Responsiv sidebjælke
På mobilen kan du placere sidebjælken over eller under hovedindholdet: brug en medieforespørgsel til at skifte fra et layout med gitterkolonner til en stak i én kolonne. Du kan også bruge grid-template-columns: min(280px, 30%) 1fr til en fleksibel sidebjælke, der bliver smallere på mindre visningsområder.
Sticky-sidebjælke
Få en sidebjælke til at rulle uafhængigt: sidebar { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. Sidebjælken bliver i visningen, mens hovedindholdet ruller, hvilket er ideelt til navigations- eller indholdsfortegnelsessidebjælker på sider med langt indhold.
Sammenklappelig sidebjælke
En sammenklappelig sidebjælke skifter mellem en tilstand med fuld bredde og en tilstand med kun ikoner. Brug en CSS-brugerdefineret egenskab til sidebjælkens bredde: --sidebar-width: 280px på wrapperen, og skift til 64px via en klasse. Overgange animerer ændringen i bredden jævnt.
Overløb i faste sidebjælker
En sidebjælke med fast position (position: fixed; left: 0; top: 0; height: 100vh) kræver, at hovedindholdet forskydes med sidebjælkens bredde: main { margin-left: 280px }. På mobilen glider sidebjælken ind over indholdet med en lukkeknap og en baggrundsoverlejring.
Tilgængelighed for sidebjælker
Markér navigationssidebjælker med <nav> og aria-label="Sidebar navigation". Sammenklappelige sidebjælker kræver en tilgængelig skifteknap med aria-expanded og aria-controls. Spring-over-links hjælper tastaturbrugere med at springe forbi sidebjælker og nå hovedindholdet.
Videnscheck
Hvorfor skal min-width: 0 sættes på flex-elementet med hovedindholdet i et sidebjælkelayout?
Opsummering
Flexbox med flex: 1 på hovedindholdet eller et gitter med tre rækker giver rene sticky-sidefødder med minimal CSS. Sidebjælkelayouts bruger faste eller fleksible kolonnedefinitioner med responsive brudpunkter, så de kan klappes sammen på mobilen. Sticky-sidebjælker, sammenklappelige bredder og tilgængelige ARIA-attributter fuldender produktionsklare mønstre for sidebjælker og sidefødder.
Lær CSS med en AI-underviser — gratis
Skriv og kør rigtig kode i din browser, få øjeblikkelig hjælp fra en AI-underviser døgnet rundt, og fortsæt, hvor du slap, på web eller i appen.
- Kurser
- 40
- Lektioner
- 159
Ofte stillede spørgsmål
Er lektionen “Layout med sticky footer og sidebar” gratis?
Ja — hele teksten til “Layout med sticky footer og sidebar” kan læses gratis her på nettet. Hvis du vil øve dig interaktivt med en indbygget kodeeditor og en AI-vejleder døgnet rundt og få adgang til resten af CSS Academy-kurset, skal du opgradere til CoddyKit PRO. CSS Academy-kurset indeholder 4 lektioner i alt.
Hvad lærer jeg i “Layout med sticky footer og sidebar”?
Byg layouts med sticky footers og sidebars, der strækker sig i fuld højde med Grid eller Flexbox. Du øver dig i CSS Academy med praktisk kode, som du kører direkte i browseren, og en AI-vejleder døgnet rundt besvarer dine spørgsmål, mens du arbejder dig gennem lektionen.
Skal jeg have erfaring for at begynde på CSS Academy?
Der kræves ingen tidligere erfaring. CSS Academy på CoddyKit er tilrettelagt for både begyndere og øvede, så du kan starte her eller fra begyndelsen og lære i dit eget tempo. Dette er lektion 1 af 4.
Hvor lang tid tager lektionen “Layout med sticky footer og sidebar”?
De fleste CoddyKit-lektioner tager cirka 5–10 minutter. Hver lektion er kort og interaktiv, så du gør løbende fremskridt og kan fortsætte, hvor du slap – på både web og app.
Kan jeg skrive og køre kode i denne CSS Academy-lektion?
Ja. Alle CSS Academy-lektioner har en indbygget kodeeditor, så du kan skrive og køre rigtig kode direkte i din browser og få øjeblikkelig feedback fra AI – uden lokal opsætning.
Alle lektioner i dette kursus
- Layout med sticky footer og sidebar
- Holy Grail-layout med Grid
- Masonry-layout: CSS- og JS-tilgange
- Intrinsic design: Indholdsstyret dimensionering