Travailler avec les Images en HTML : Guide Complet du Tag <img>
Maîtrisez les images HTML avec ce guide complet couvrant le tag img, le texte alternatif, les formats de fichiers, les images responsives, srcset et l'optimisation des performances web.
Maîtrisez les images HTML avec ce guide complet couvrant le tag img, le texte alternatif, les formats de fichiers, les images responsives, srcset et l'optimisation des performances web.
<img>
ExpliquéLe tag <img>
est un élément HTML auto-fermant utilisé pour intégrer des images dans les pages web. Contrairement à d'autres éléments HTML, il ne nécessite pas de balise de fermeture et utilise des attributs pour définir la source et les propriétés de l'image.
<img src="chemin/vers/image.jpg" alt="Description de l'image" />
<img>
Attributs Requis :
src
: Spécifie le chemin vers le fichier imagealt
: Fournit un texte alternatif pour l'accessibilitéAttributs Optionnels :
width
: Définit la largeur de l'image en pixelsheight
: Définit la hauteur de l'image en pixelstitle
: Ajoute une info-bulle au survol de l'imageloading
: Contrôle quand l'image se charge (chargement paresseux)<img
src="images/coucher-soleil-plage.jpg"
alt="Magnifique coucher de soleil sur une plage tropicale avec des palmiers"
width="800"
height="600"
title="Paradis de la Plage au Coucher de Soleil"
loading="lazy"
/>
Le texte alternatif (alt text) est crucial pour l'accessibilité web et le SEO. Il sert plusieurs objectifs :
Bons Exemples de Texte Alt :
<!-- Descriptif et spécifique -->
<img
src="golden-retriever.jpg"
alt="Golden retriever jouant à rapporter dans un parc ensoleillé"
/>
<!-- Description fonctionnelle pour les boutons -->
<img src="icone-recherche.png" alt="Rechercher" />
<!-- Alt vide pour les images décoratives -->
<img src="bordure-decorative.png" alt="" />
Bonnes Pratiques pour le Texte Alt :
alt=""
) pour les images purement décorativesMauvais Exemples de Texte Alt :
<!-- Trop vague -->
<img src="chien.jpg" alt="chien" />
<!-- Redondant -->
<img src="coucher-soleil.jpg" alt="Image d'un coucher de soleil" />
<!-- Trop long -->
<img
src="bureau.jpg"
alt="Un très grand immeuble de bureaux moderne avec des fenêtres en verre et une structure en acier situé dans le centre-ville avec des gens qui passent"
/>
Choisir le bon format d'image est crucial pour les performances web et la qualité. Voici les principaux formats et leurs cas d'usage :
Idéal pour : Photographies et images avec de nombreuses couleurs
Caractéristiques :
<img src="photo-paysage.jpg" alt="Paysage de montagne au lever du soleil" />
Idéal pour : Images avec transparence, logos, graphiques avec peu de couleurs
Caractéristiques :
<img src="logo-entreprise.png" alt="Logo de l'entreprise Mediaweb" />
Idéal pour : Applications web modernes (quand supporté)
Caractéristiques :
<picture>
<source srcset="image-hero.webp" type="image/webp" />
<img src="image-hero.jpg" alt="Bannière hero montrant notre produit" />
</picture>
Idéal pour : Graphiques simples, icônes, logos qui doivent être redimensionnés
Caractéristiques :
<img src="icone-fleche.svg" alt="Flèche droite" />
Idéal pour : Animations simples (à utiliser avec parcimonie)
Caractéristiques :
Les sites web modernes doivent fonctionner sur diverses tailles d'écran et résolutions. Les images responsives assurent des performances et une qualité optimales sur tous les appareils.
srcset
L'attribut srcset
vous permet de fournir plusieurs sources d'images pour différentes conditions d'écran :
<img
src="image-800w.jpg"
srcset="image-400w.jpg 400w, image-800w.jpg 800w, image-1200w.jpg 1200w"
sizes="(max-width: 600px) 400px, (max-width: 1000px) 800px, 1200px"
alt="Image de paysage responsive"
/>
Descripteurs de Largeur (w
) :
srcset=" petite-image.jpg 400w, moyenne-image.jpg 800w, grande-image.jpg 1200w "
Descripteurs de Densité (x
) :
srcset=" image.jpg 1x, image-2x.jpg 2x, image-3x.jpg 3x "
<picture>
Pour des scénarios d'images responsives plus complexes, utilisez l'élément <picture>
:
<picture>
<!-- Mobile : image plus petite, recadrée -->
<source media="(max-width: 600px)" srcset="mobile-hero.jpg" />
<!-- Tablette : image de taille moyenne -->
<source media="(max-width: 1024px)" srcset="tablette-hero.jpg" />
<!-- Desktop : image pleine taille -->
<source media="(min-width: 1025px)" srcset="desktop-hero.jpg" />
<!-- Solution de secours pour les anciens navigateurs -->
<img src="desktop-hero.jpg" alt="Bannière hero présentant nos services" />
</picture>
Utilisez différentes images pour différentes tailles d'écran :
<picture>
<!-- Mobile : orientation portrait -->
<source media="(max-width: 600px)" srcset="image-portrait.jpg" />
<!-- Desktop : orientation paysage -->
<img src="image-paysage.jpg" alt="Collaboration d'équipe dans un bureau moderne" />
</picture>
L'optimisation des images est cruciale pour des sites web à chargement rapide. Voici les techniques essentielles :
<!-- Ne pas faire : grande image réduite -->
<img
src="image-enorme-4000x3000.jpg"
width="400"
height="300"
alt="Photo de produit"
/>
<!-- Faire : image de taille appropriée -->
<img src="produit-400x300.jpg" width="400" height="300" alt="Photo de produit" />
<!-- Navigateurs modernes -->
<img src="image.jpg" alt="Description" loading="lazy" />
<!-- Avec solution de secours intersection observer -->
<img
src="placeholder.jpg"
data-src="image-reelle.jpg"
alt="Description"
class="lazy-load"
loading="lazy"
/>
Pour les images JPEG :
Pour les images PNG :
<picture>
<!-- Format moderne pour les navigateurs supportés -->
<source srcset="image.avif" type="image/avif" />
<source srcset="image.webp" type="image/webp" />
<!-- Solution de secours pour tous les navigateurs -->
<img src="image.jpg" alt="Description" />
</picture>
<!-- Prévient le décalage de mise en page -->
<img
src="image.jpg"
alt="Description"
width="800"
height="600"
style="max-width: 100%; height: auto;"
/>
Créez des zones cliquables dans une image :
<img src="carte-monde.jpg" alt="Carte du monde" usemap="#cartemonde" />
<map name="cartemonde">
<area
shape="rect"
coords="0,0,100,100"
href="amerique-nord.html"
alt="Amérique du Nord"
/>
<area shape="circle" coords="200,200,50" href="europe.html" alt="Europe" />
</map>
Fournissez du sens sémantique et des légendes :
<figure>
<img src="graphique.jpg" alt="Graphique de croissance des ventes montrant une augmentation de 25%" />
<figcaption>
Croissance des Ventes : T4 2024 montre une augmentation de 25% par rapport au trimestre précédent
</figcaption>
</figure>
Stylisez les images avec CSS :
<img src="profil.jpg" alt="Photo de profil utilisateur" class="image-profil" />
.image-profil {
width: 150px;
height: 150px;
border-radius: 50%;
object-fit: cover;
border: 3px solid #007bff;
}
<!-- Incorrect -->
<img src="graphique-important.jpg" />
<!-- Correct -->
<img
src="graphique-important.jpg"
alt="Graphique de croissance des revenus montrant une augmentation de 40%"
/>
<!-- Incorrect : texte dans l'image -->
<img src="texte-titre.jpg" alt="Bienvenue sur Notre Site Web" />
<!-- Correct : texte réel -->
<h1>Bienvenue sur Notre Site Web</h1>
<!-- Incorrect : fichier énorme -->
<img src="photo-5mb.jpg" alt="Photo d'équipe" />
<!-- Correct : fichier optimisé -->
<img src="photo-optimisee-200kb.jpg" alt="Photo d'équipe" />
<!-- Incorrect : taille fixe -->
<img src="hero.jpg" width="1200" height="800" alt="Image hero" />
<!-- Correct : responsive -->
<img
src="hero.jpg"
srcset="hero-400w.jpg 400w, hero-800w.jpg 800w, hero-1200w.jpg 1200w"
sizes="100vw"
alt="Image hero"
style="max-width: 100%; height: auto;"
/>
Travailler avec les images en HTML implique bien plus que simplement ajouter un tag <img>
à votre page. En comprenant l'implémentation appropriée, les exigences d'accessibilité, les formats de fichiers, les techniques responsives et les stratégies d'optimisation, vous pouvez créer des sites web qui sont rapides, accessibles et visuellement attrayants sur tous les appareils.
Rappelez-vous que les images impactent significativement à la fois l'expérience utilisateur et les performances du site web. Prenez le temps d'implémenter ces techniques correctement, et vos utilisateurs vous remercieront avec un meilleur engagement et des chargements de page plus rapides.
Commencez à implémenter ces techniques d'optimisation d'images dans votre prochain projet, et vous verrez des améliorations immédiates dans les scores de performance et d'accessibilité.
Continuez votre lecture avec ces articles connexes
Maîtrisez les listes HTML avec ce guide complet couvrant les éléments ul, ol et dl, les techniques d'imbrication, le stylisme avec CSS et les meilleures pratiques d'accessibilité.
Apprenez à créer des tableaux HTML des bases aux techniques avancées. Maîtrisez les éléments table, tr, td, th, l'accessibilité, le design responsif et quand utiliser les tableaux appropriément.
Apprenez à créer des formulaires HTML interactifs avec les types d'input, étiquettes, boutons et validation de base. Maîtrisez l'accessibilité des formulaires et les meilleures pratiques.
Découvrez la puissance des éléments HTML sémantiques comme header, footer, article et section. Apprenez comment le balisage sémantique améliore le SEO, l'accessibilité et la maintenabilité du code.