Layout met sticky footer en sidebar
Bouw layouts met sticky footers en sidebars die met Grid of Flexbox de volledige hoogte vullen.
Layout met sticky footer en sidebar is een gratis CSS Academy-les op CoddyKit. Dit is les 1 van 4. Je kunt de volledige les hieronder gratis lezen en daarna in de browser praktisch oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject CSS Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus CSS Academy bevat in totaal 4 lessen.
Probleem met vastgezette voettekst
Een vastgezette voettekst blijft onderaan het weergavegebied staan wanneer de inhoud kort is, maar schuift omlaag met de inhoud wanneer die lang is. De historische uitdaging: de voettekst laten vaststaan zonder de hoogte van de inhoud te kennen of JavaScript te gebruiken.
Vastgezette voettekst met Flexbox
De eenvoudigste moderne oplossing: body { display: flex; flex-direction: column; min-height: 100vh; } en main { flex: 1; }. De hoofdinhoud groeit om de beschikbare ruimte te vullen en duwt de voettekst naar onderen, ongeacht de lengte van de inhoud.
Vastgezette voettekst met Grid
Alternatief met CSS Grid: body { display: grid; grid-template-rows: auto 1fr auto; min-height: 100vh; }. header krijgt automatische hoogte, main krijgt 1fr (vult de resterende ruimte) en footer krijgt automatische hoogte. Helder en expliciet — de rijtemplate laat duidelijk zien wat de bedoeling van de indeling is.
Voettekst met position: sticky
position: sticky; bottom: 0 op de voettekst houdt die tijdens het scrollen aan de onderkant van het weergavegebied vast, maar alleen wanneer de scrollcontext dat toestaat. Dit werkt voor voetteksten in een scrollende container — minder geschikt voor vastgezette voetteksten op paginaniveau, waarvoor flexbox/grid netter is.
Zijbalkindeling met Flexbox
Een indeling met een zijbalk en hoofdinhoud: wrapper { display: flex; }, sidebar { width: 280px; flex-shrink: 0; }, main { flex: 1; min-width: 0; }. De min-width: 0 op main voorkomt dat flexitems buiten hun container vallen wanneer ze brede inhoud bevatten.
Zijbalkindeling met Grid
Indeling met Grid en een zijbalk: wrapper { display: grid; grid-template-columns: 280px 1fr; gap: var(--spacing-4); }. De kolom van de zijbalk heeft een vaste breedte; de inhoudskolom vult de resterende ruimte. Voeg een koptekstrij toe: grid-template-rows: auto 1fr waarbij de zijbalk beide rijen beslaat.
Responsieve zijbalk
Op mobiele apparaten laat je de zijbalk boven of onder de hoofdinhoud inklappen: gebruik een mediaquery om van een indeling met rasterkolommen over te schakelen naar een stapel met één kolom. Of gebruik grid-template-columns: min(280px, 30%) 1fr voor een vloeiende zijbalk die op kleinere weergavegebieden smaller wordt.
Vastgezette zijbalk
Laat een zijbalk onafhankelijk scrollen: sidebar { position: sticky; top: 0; height: 100vh; overflow-y: auto; }. De zijbalk blijft in beeld terwijl de hoofdinhoud scrollt, ideaal voor navigatie of inhoudsopgavezijbalken op pagina's met lange inhoud.
Inklapbare zijbalk
Een inklapbare zijbalk wisselt tussen een toestand over de volledige breedte en een toestand met alleen pictogrammen. Gebruik een aangepaste CSS-eigenschap voor de breedte van de zijbalk: --sidebar-width: 280px op de omhulling, en wissel via een klasse naar 64px. Overgangen animeren de breedtewijziging vloeiend.
Overloop in vastgezette zijbalken
Een vast gepositioneerde zijbalk (position: fixed; left: 0; top: 0; height: 100vh) vereist dat je de hoofdinhoud compenseert met de breedte van de zijbalk: main { margin-left: 280px }. Op mobiele apparaten schuift de zijbalk over de inhoud heen met een sluitknop en een achtergrondlaag.
Toegankelijkheid van zijbalken
Markeer navigatiezijbalken met <nav> en aria-label="Sidebar navigation". Inklapbare zijbalken hebben een toegankelijke schakelknop nodig met aria-expanded en aria-controls. Overslaankoppelingen helpen toetsenbordgebruikers zijbalken over te slaan en de hoofdinhoud te bereiken.
Kennistoets
Waarom moet min-width: 0 worden ingesteld op het flexitem met de hoofdinhoud in een zijbalkindeling?
Samenvatting
Flexbox met flex: 1 op main of een raster met drie rijen zorgt met minimale CSS voor nette vastgezette voetteksten. Zijbalkindelingen gebruiken vaste of vloeiende kolomdefinities met responsieve breekpunten om op mobiele apparaten in te klappen. Vastgezette zijbalken, inklapbare breedten en toegankelijke ARIA-attributen maken productieklare patronen voor zijbalken en voetteksten compleet.
Leer CSS met een AI-tutor — gratis
Schrijf echte code en voer die uit in je browser, krijg direct hulp van een AI-tutor die 24/7 beschikbaar is en ga verder waar je gebleven bent op het web of in de app.
- Cursussen
- 40
- Lessen
- 159
Veelgestelde vragen
Is de les “Layout met sticky footer en sidebar” gratis?
Ja — de volledige tekst van “Layout met sticky footer en sidebar” kun je hier gratis op het web lezen. Als je interactief wilt oefenen met een ingebouwde code-editor en een AI-begeleider die 24/7 beschikbaar is, en de rest van de cursus CSS Academy wilt ontgrendelen, kun je upgraden naar CoddyKit PRO. De cursus CSS Academy bevat in totaal 4 lessen.
Wat leer ik in “Layout met sticky footer en sidebar”?
Bouw layouts met sticky footers en sidebars die met Grid of Flexbox de volledige hoogte vullen. Je oefent met CSS Academy door code rechtstreeks in de browser uit te voeren. Een AI-begeleider die 24/7 beschikbaar is beantwoordt je vragen terwijl je de les doorwerkt.
Heb ik ervaring nodig om met CSS Academy te beginnen?
Ervaring vooraf is niet nodig. CSS Academy op CoddyKit is opgebouwd voor beginners tot gevorderden, zodat je hier of bij het begin kunt starten en in je eigen tempo kunt leren. Dit is les 1 van 4.
Hoe lang duurt de les “Layout met sticky footer en sidebar”?
De meeste lessen van CoddyKit duren ongeveer 5–10 minuten. Elke les is kort en interactief, zodat je gestaag vooruitgaat en op het web en in de app precies verdergaat waar je was gebleven.
Kan ik code schrijven en uitvoeren in deze les over CSS Academy?
Ja. Elke les over CSS Academy bevat een ingebouwde code-editor, zodat je rechtstreeks in je browser echte code kunt schrijven en uitvoeren en direct feedback van AI krijgt — lokale installatie is niet nodig.
Alle lessen in deze cursus
- Layout met sticky footer en sidebar
- Holy Grail-layout met Grid
- Masonry-layout: CSS- en JS-aanpakken
- Intrinsiek ontwerp: contentgestuurde afmetingen