img-alt-quality

Le texte alt de <img> doit être approprié (revue manuelle)

manualWCAG 1.1.1 (A)confiance : mediumgravité : minorperceivable

Signale les éléments <img> dont le texte alt est non vide, pour qu’une personne vérifie s’il est approprié, et indique quand l’alt ressemble à un nom de fichier, à une adresse web, à un texte provisoire, commence par « image of » ou est très long.

Applicabilité. S’applique aux éléments <img> dont l’attribut alt est présent et non vide. L’élément doit être inclus dans l’arbre d’accessibilité, et un attribut role qui se résout en presentation/none (son premier jeton désignant un rôle connu, sans tenir compte de la casse) l’exclut du périmètre sauf s’il peut recevoir le focus, ce qui rétablit son rôle. Un <img> sans aucun alt relève de l’échec d’img-alt-present, et un <img> avec alt="" de la revue d’img-alt-decorative.

Attendu. Une revue humaine est nécessaire pour confirmer que l’alternative textuelle fournie est exacte et appropriée. Un texte alt qui ressemble à autre chose qu’une description reçoit son propre résumé et son propre conseil : un nom de fichier (ou un alt identique au nom de fichier de l’image elle-même), une adresse web, uniquement des symboles (comme « ★★★★☆ »), un texte provisoire ou un mot générique comme « image » ou « TBD », un début qui dit qu’il s’agit d’une image (« image of », « photo of »), ou un alt de plus de 150 caractères. Chaque constat reste cantTell : chacun de ces cas peut être correct selon le contexte.

Ce que rapporte un constat.

  • altSignal : ce qui a rendu le texte alt suspect, sur ces constats uniquement : file-name, url, symbols, placeholder, redundant-prefix ou too-long. Absent d’un constat dont le texte alt est ordinaire. Lorsque plusieurs s’appliquent, c’est le premier dans cet ordre qui est indiqué.
  • length : la longueur du texte alt en caractères, sur too-long uniquement.
  • limit : la longueur au-delà de laquelle un alt est considéré comme trop long (150), sur too-long uniquement.
  • reasonCode : IMAGE_ONLY_CONTROL_CONTENT lorsque l’image est le seul contenu d’un lien ou d’un bouton (sans texte ni autre image), si bien que son alt est le nom du contrôle (H30), avec controlContent qui nomme le rôle du contrôle (link ou button) ; TEXT_ALTERNATIVE_REVIEW sinon.

Ces champs de data.details aident à lire et à reproduire un constat. À part reasonCode et les quelques champs que la page Schéma de sortie donne comme stables, ils ne constituent pas un contrat stable : un champ peut être renommé ou supprimé dans une version mineure, ne vous appuyez donc pas dessus.

Exemples

can't tell
<img src="chart.png" alt="image">

Un alt non vide est présent, mais « image » répète le type d’élément au lieu de décrire ce que montre le graphique. Le constat indique que l’alt est un texte provisoire ou un mot générique (data.details.altSignal: "placeholder"), comme il le fait pour un nom de fichier, une adresse web, un début « image of » ou un alt de plus de 150 caractères.

can't tell
<img src="team.jpg" alt="Our support team at the 2025 meetup">

Un texte alt ordinaire reçoit la revue générale : seule une personne peut dire s’il décrit bien l’image dans son contexte.

n/a
<img src="border.png" alt="">

Un alt vide marque l’image comme décorative ; c’est la question d’img-alt-decorative, pas de cette règle.

Comment vérifier

Quand cette règle ne peut pas trancher, elle renvoie cantTell et laisse la question à une personne. Chaque question qu’elle peut poser figure ici sous son code de raison, avec les étapes pour y répondre. Un constat porte les mêmes étapes dans howToCheck, dans la langue de l’analyse. Voir Schéma de sortie.

IMAGE_ONLY_CONTROL_CONTENT

  1. Repérez le lien ou le bouton indiqué par le rapport ; l’image est son seul contenu, donc son alt est le nom du contrôle.
  2. Lisez le texte alt, puis activez le contrôle ou vérifiez sa destination pour savoir ce qu’il fait.
  3. Déterminez si l’alt dit ce que fait le contrôle (« Rechercher », « Accueil »), et non à quoi ressemble l’image.

Réussite. Le texte alt indique la fonction ou la destination du contrôle.

Échec. Le texte alt ne dit pas ce que fait le contrôle, par exemple un nom de fichier, une adresse, un mot générique ou des symboles, ce qui ne respecte pas le critère WCAG 1.1.1 (H30, F30).

TEXT_ALTERNATIVE_REVIEW

  1. Repérez l’image indiquée par le rapport et lisez son texte alt (le rapport donne la raison pour laquelle il semblait suspect, le cas échéant).
  2. Regardez l’image et son contexte, et demandez-vous ce qu’elle montre d’important pour la page.
  3. Si l’équivalent textuel ne fait que nommer l’image, comme c’est courant pour les graphiques et les schémas, les détails peuvent se trouver ailleurs : dans une légende, un texte ou un tableau à côté, ou dans un lien juste à côté. Cela ne compte que si un utilisateur de lecteur d’écran peut les trouver depuis l’image et qu’ils donnent tout ce que montre l’image.
  4. Décidez si l’alt dit ce qui compte, ou nomme l’image pendant que cette description donne le reste ; un nom de fichier, une adresse web ou un mot générique comme « image » ne fait ni l’un ni l’autre.

Réussite. Le texte alt transmet ce que montre l’image et dont l’utilisateur a besoin, ou il nomme l’image et une description qu’un utilisateur de lecteur d’écran atteint depuis elle donne le reste.

Échec. Ni le texte alt ni une description atteignable depuis l’image ne transmettent son contenu (par exemple, l’alt est un nom de fichier, une adresse ou un mot générique), ce qui ne respecte pas le critère WCAG 1.1.1 (F30).

Règles associées

Voir le code source