Comment fonctionnent les images responsives avec srcset
L'attribut srcset liste les différentes versions d'une image avec leur largeur. L'attribut sizes indique au navigateur la taille d'affichage prévue selon le viewport. Le navigateur choisit automatiquement la version la plus adaptée en tenant compte de la taille de l'écran, de la densité de pixels (DPR) et de la connexion. Sur un écran Retina (DPR=2), le navigateur chargera une image deux fois plus grande que la taille d'affichage CSS.
Balise <picture> pour les formats modernes
La balise <picture> permet de servir différents formats selon le support du navigateur, avec un ordre de priorité. Placez AVIF en premier (meilleure compression), WebP en second (support large), et JPEG/PNG en dernier (fallback universel). Les navigateurs ne supportant pas AVIF afficheront automatiquement WebP, et ceux ne supportant pas WebP afficheront JPEG. C'est la solution la plus robuste pour servir des images modernes tout en maintenant une compatibilité totale.
Optimiser les Core Web Vitals avec les images responsives
Les images responsives améliorent directement le LCP (Largest Contentful Paint) en chargeant une image de taille adaptée. Elles améliorent aussi le CLS (Cumulative Layout Shift) si les attributs width et height sont définis. Pour le LCP, ajoutez fetchpriority="high" et évitez loading="lazy" sur l'image principale (hero). Pour les autres images, loading="lazy" évite de charger des images jamais vues.