Lazy loading van afbeeldingen: loading=lazy
Stel het laden van afbeeldingen buiten beeld uit met het native loading-attribuut
Lazy loading van afbeeldingen: loading=lazy is een gratis HTML Academy-les op CoddyKit. Dit is les 3 van 4. Je kunt 3 lessen uit dit leerpad gratis volledig lezen — daarna ontgrendelt CoddyKit PRO alle lessen, plus praktische oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. Deze les maakt deel uit van het leertraject HTML Academy. Je voortgang wordt gesynchroniseerd op het web en in de CoddyKit-app. De cursus HTML Academy bevat in totaal 4 lessen.
Het loading-attribuut
<img loading="lazy" src="..."> vertelt de browser dat hij het downloaden van de afbeelding moet uitstellen tot deze op het punt staat de viewport binnen te komen. Ingebouwde ondersteuning in alle moderne browsers maakt dit de eenvoudigste prestatiewinst voor pagina's met veel afbeeldingen.
Hoe 'dicht bij de viewport' wordt gedefinieerd
Browsers gebruiken een kleine heuristische marge (meestal enkele duizenden pixels onder de vouw). De afbeelding begint vroeg genoeg met laden om volledig te zijn getekend tegen de tijd dat je ernaartoe scrolt — lazy loading blijft onzichtbaar voor wie zorgvuldig scrolt.
Wanneer je geen lazy loading moet gebruiken
Stel loading="lazy" nooit in voor afbeeldingen boven de vouw of voor je LCP-kandidaat (Largest Contentful Paint). Het uitgestelde laden vertraagt het belangrijkste visuele element, wat zowel de waargenomen snelheid als Core Web Vitals verslechtert.
Breedte en hoogte zijn vereist
Geef het <img>-element voor effectieve lazy loading expliciete width en height (of gebruik CSS met aspect-ratio). Zonder afmetingen kan de browser geen ruimte reserveren, verandert de lay-out tijdens het scrollen en werkt de heuristiek voor lazy loading niet goed.
<img loading="lazy" src="cat.jpg" width="800" height="600" alt="A cat">Lazy loading voor iframe
Hetzelfde attribuut werkt op <iframe>. <iframe loading="lazy"> stelt het laden uit van kaarten, video's en insluitingen van sociale media onder de vouw — die anders bij elke weergave van de pagina megabytes aan JavaScript van derden zouden ophalen.
eager is de standaard
De standaardwaarde is loading="eager" (onmiddellijk laden) en wordt zelden expliciet geschreven. eager instellen voor afbeeldingen boven de vouw kan nuttig zijn als documentatie, omdat het aan reviewers laat zien dat de keuze voor eager bewust is gemaakt.
Combineren met srcset
Lazy loading werkt perfect samen met responsieve afbeeldingen. De browser kiest nog steeds de juiste kandidaat uit srcset; alleen het downloaden wordt uitgesteld. Er is geen extra afstemming nodig tussen loading="lazy" en srcset.
<img
loading="lazy"
srcset="img-400.jpg 400w, img-800.jpg 800w, img-1200.jpg 1200w"
sizes="(min-width: 768px) 800px, 100vw"
src="img-800.jpg"
alt="Hero"
width="800" height="600"
>Hint voor decodering
Combineer lazy loading met decoding="async" zodat de browser de afbeelding buiten de hoofdthread kan decoderen. Zo wordt invoer niet geblokkeerd tijdens het scrollen wanneer na een lange scrollactie veel afbeeldingen tegelijk binnenkomen.
Achtergrondafbeeldingen
CSS background-image kan niet standaard met lazy loading worden geladen. Voor hero-achtergronden boven de vouw is dat geen probleem; gebruik voor achtergronden onder de vouw IntersectionObserver om de URL in te vullen wanneer het element de viewport nadert.
Gedrag bij afdrukken
Wanneer de pagina wordt afgedrukt, laadt de browser elke afbeelding eager, ongeacht loading="lazy", zodat de afdruk compleet is. Je hoeft lazy afbeeldingen niet apart te behandelen in afdrukstijlen.
Besparingen meten
De controle "Defer offscreen images" van Lighthouse vermeldt elke afbeelding waarvoor loading="lazy" zou moeten worden gebruikt. Door het Netwerkpaneel te filteren op "Img" en de weergave "Waterfall" te gebruiken, zie je de gespreide laadmomenten die lazy loading veroorzaakt — bij afbeeldingsgalerijen neemt het aantal eerste aanvragen drastisch af.
Kennischeck
Waarom is het schadelijk om loading="lazy" in te stellen voor een hero-afbeelding boven aan de pagina?
Samenvatting
loading="lazy" op <img>- en <iframe>-elementen buiten de viewport levert met één attribuut prestatiewinst op. Combineer dit met expliciete width/height (om ruimte te reserveren), srcset (voor responsiviteit) en decoding="async" (voor soepel scrollen). Pas het nooit toe op de LCP-afbeelding of op iets dat in de eerste viewport zichtbaar is.
Leer HTML 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 “Lazy loading van afbeeldingen: loading=lazy” gratis?
Ja — je kunt hier op het web alle 3 lessen van het leerpad HTML Academy, waaronder “Lazy loading van afbeeldingen: loading=lazy”, gratis volledig lezen. Daarna ontgrendelt CoddyKit PRO alle lessen, plus interactieve oefeningen met een ingebouwde code-editor en een AI-tutor die 24/7 beschikbaar is. De cursus HTML Academy bevat in totaal 4 lessen.
Wat leer ik in “Lazy loading van afbeeldingen: loading=lazy”?
Stel het laden van afbeeldingen buiten beeld uit met het native loading-attribuut Je oefent met HTML 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 HTML Academy te beginnen?
Ervaring vooraf is niet nodig. HTML 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 3 van 4.
Hoe lang duurt de les “Lazy loading van afbeeldingen: loading=lazy”?
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 HTML Academy?
Ja. Elke les over HTML 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
- De attributen async en defer
- Preload prefetch en preconnect
- Lazy loading van afbeeldingen: loading=lazy
- Resource hints: modulepreload