Exemple fictif : la Boutique Ar Mor n'existe pas. Ce rapport a été produit par l'outil sur une page de démonstration qui contient des erreurs volontaires.

Pré-diagnostic automatique

Accessibilité : boutique-ar-mor.exampleBoutique Ar Mor – démo

Télécharger le rapport en PDF Voir la carte des critères

Ceci n'est pas un audit de conformité. Les tests automatiques couvrent partiellement 35 critères RGAA sur 106. Les autres critères demandent une vérification humaine : une page sans problème détecté peut quand même gêner certains visiteurs.

Chiffres clés

8critères RGAA en échecÀ corriger
8types de problèmesÀ corriger
20éléments concernés
5points à vérifier à la mainÀ regarder

COUVERTURE DES TESTS

Carte des 106 critères du RGAA 4.1

Chaque case est un critère. Elle montre ce que l'analyse automatique a pu examiner : c'est l'étendue des tests, pas un verdict sur le site.

35 critères examinés, 71 qui demandent une personneSurvolez une case pour lire le critère.
  • Examiné, rien détecté
  • À vérifier
  • En échec
  • Demande une personne
Voir la même information sous forme de tableau
Critères testés automatiquement et critères en échec, par thématique RGAA
ThématiqueCritères testés automatiquementCritères en échec
1. Images 2 sur 9 (1.1, 1.3) 1.1
2. Cadres 2 sur 2 (2.1, 2.2) 2.1
3. Couleurs 1 sur 3 (3.2) 3.2
4. Multimédia 2 sur 13 (4.3, 4.10) aucun
5. Tableaux 4 sur 8 (5.2, 5.4, 5.6, 5.7) aucun
6. Liens 2 sur 2 (6.1, 6.2) 6.2
7. Scripts 2 sur 5 (7.1, 7.3) aucun
8. Éléments obligatoires 5 sur 10 (8.2, 8.3, 8.4, 8.5, 8.8) 8.3
9. Structuration de l'information 3 sur 4 (9.1, 9.2, 9.3) 9.2
10. Présentation de l'information 3 sur 14 (10.4, 10.6, 10.8) aucun
11. Formulaires 4 sur 13 (11.1, 11.2, 11.9, 11.13) 11.1, 11.9
12. Navigation 2 sur 11 (12.7, 12.8) aucun
13. Consultation 3 sur 12 (13.1, 13.8, 13.9) aucun

Les numéros renvoient aux critères du RGAA 4.1.

PROBLÈMES DÉTECTÉS

Ce que les tests ont relevé

Classés du plus grave au moins grave. Chaque problème indique le critère RGAA concerné, les éléments en cause et la correction à apporter.

1.1 BLOQUANTLes images doivent avoir une alternative textuelle 2éléments concernés

Vérifier que les éléments <img> ont une alternative textuelle, ou un rôle de type 'none' ou 'presentation'

Correction suggérée

Ajoutez un attribut alt à chaque image : un texte court qui donne la même information que l'image (par exemple le nom de la marque pour un logo), ou alt="" si l'image est purement décorative.

Tests RGAA : 1.1.1 · contrôle image-alt · documentation de la règle (en anglais)

Éléments en cause

  • img[src$="logo.png"]
    <img src="logo.png">

    L’élément n’a pas d’attribut alt

  • img[src$="panier.svg"]
    <img src="panier.svg">

    L’élément n’a pas d’attribut alt

11.1 BLOQUANTL’élément 'select' doit avoir un nom accessible 1élément concerné

Vérifier que l’élément 'select' a un nom accessible

Correction suggérée

Associez une étiquette visible à la liste : label for="pays" et id="pays" sur l'élément select.

Tests RGAA : 11.1.1 · contrôle select-name · documentation de la règle (en anglais)

Éléments en cause

  • select
    <select><option>France</option><option>Belgique</option></select>

    L’élément de formulaire n’a pas de <label> implicite (imbriqué)

11.9 BLOQUANTLes boutons doivent avoir un texte perceptible 1élément concerné

Vérifier que les boutons ont un texte perceptible

Correction suggérée

Donnez au bouton un texte qui dit ce qu'il fait (« S'inscrire », « Rechercher »). S'il ne contient qu'une icône, ajoutez aria-label.

Tests RGAA : 11.9.1 · contrôle button-name · documentation de la règle (en anglais)

Éléments en cause

  • button
    <button></button>

    L’élément n’a aucun contenu textuel visible par les lecteurs d’écran

2.1 MAJEURChaque cadre doit avoir un attribut title 1élément concerné

Vérifier que les éléments <iframe> et <frame> ont un attribut title non vide

Correction suggérée

Ajoutez au cadre un attribut title qui décrit son contenu (« Carte d'accès au magasin »), ou supprimez le cadre s'il ne sert à rien.

Tests RGAA : 2.1.1 · contrôle frame-title · documentation de la règle (en anglais)

Éléments en cause

  • iframe
    <iframe src="about:blank"></iframe>

    L’élément n’a pas d’attribut title

3.2 MAJEURLes éléments doivent avoir un contraste de couleurs suffisant 2éléments concernés

Vérifier que les contrastes entre le premier plan et l’arrière-plan rencontrent les seuils de contrastes exigés par les WCAG 2 AA

Correction suggérée

Foncez le texte ou éclaircissez le fond jusqu'à un rapport de contraste d'au moins 4,5:1 (3:1 pour les grands textes).

Tests RGAA : 3.2.1 · contrôle color-contrast · documentation de la règle (en anglais)

Éléments en cause

  • p
    <p class="promo">-20 % sur toute la collection marinière jusqu'à dimanche</p>

    L’élément a un contraste de couleurs insuffisant de 2.81 (couleur d’avant plan : #9a9a9a, couleur d’arrière plan : #ffffff, taille de police : 12.0pt (16px), graisse : normal). Contraste de couleur attendu : 4.5:1

  • span
    <span class="btn" onclick="ajouter()">Ajouter au panier</span>

    L’élément a un contraste de couleurs insuffisant de 1.7 (couleur d’avant plan : #ffffff, couleur d’arrière plan : #f0c040, taille de police : 12.0pt (16px), graisse : normal). Contraste de couleur attendu : 4.5:1

6.2 MAJEURLes liens doivent avoir un texte perceptible 2éléments concernés

Vérifier que les liens ont un texte perceptible

Correction suggérée

Donnez un intitulé à chaque lien : un texte visible, ou une alternative sur l'image qu'il contient (alt="Panier").

Tests RGAA : 6.2.1 · contrôle link-name · documentation de la règle (en anglais)

Éléments en cause

  • a[href$="panier"]
    <a href="/panier"><img src="panier.svg"></a>

    L’élément est dans l’ordre de tabulation et n’a pas d’intitulé accessible

  • a[href$="compte"]
    <a href="/compte"></a>

    L’élément est dans l’ordre de tabulation et n’a pas d’intitulé accessible

8.3 MAJEURL’élément <html> doit avoir un attribut lang 1élément concerné

Vérifier que chaque document HTML a un attribut lang

Correction suggérée

Déclarez la langue principale de la page : html lang="fr".

Tests RGAA : 8.3.1 · contrôle html-has-lang · documentation de la règle (en anglais)

Éléments en cause

  • html
    <html>

    L’élément <html> n’a pas d’attribut lang

9.2 MODÉRÉLe contenu doit être localisé dans une région 10éléments concernés

Vérifier que tout le contenu est localisé dans une région

Correction suggérée

Placez le contenu dans des zones identifiées : header, nav, main et footer.

Tests RGAA : 9.2.1 · contrôle region · documentation de la règle (en anglais)

Éléments en cause

  • .header
    <div class="header">
      <img src="logo.png">
      <a href="/panier"><img src="panier.svg"></a>
      <a href="/compte"></a>
    </div>

    Contenu non imbriqué dans une région ARIA

  • h1
    <h1>Bienvenue</h1>

    Contenu non imbriqué dans une région ARIA

  • h4
    <h4>Nos nouveautés</h4>

    Contenu non imbriqué dans une région ARIA

  • p
    <p class="promo">-20 % sur toute la collection marinière jusqu'à dimanche</p>

    Contenu non imbriqué dans une région ARIA

  • .produit
    <div class="produit">
      <img src="mariniere.jpg" alt="mariniere.jpg">
      <span class="btn" onclick="ajouter()">Ajouter au panier</span>
    </div>

    Contenu non imbriqué dans une région ARIA

  • input
    <input type="email" placeholder="Votre e-mail">

    Contenu non imbriqué dans une région ARIA

  • select
    <select><option>France</option><option>Belgique</option></select>

    Contenu non imbriqué dans une région ARIA

  • table
    <table>
      <tbody><tr><td>Taille</td><td>Tour de poitrine</td></tr>
      <tr><td>M</td><td>96 cm</td></tr>
    </tbody></table>

    Contenu non imbriqué dans une région ARIA

  • div:nth-child(9)
    <div id="dup">a</div>

    Contenu non imbriqué dans une région ARIA

  • div:nth-child(10)
    <div id="dup">b</div>

    Contenu non imbriqué dans une région ARIA

POINTS À VÉRIFIER

Points à vérifier à la main

Les tests n'ont pas pu conclure seuls sur ces éléments : une personne doit juger s'ils posent problème.

1.3 À VÉRIFIERAlternative textuelle qui ressemble à un nom de fichier 1élément concerné

Une alternative comme « photo.jpg » ne décrit pas l'image. Vérifier qu'elle est pertinente.

Correction suggérée

Remplacez le nom de fichier par une description de ce que montre l'image, ou par alt="" si le texte voisin donne déjà l'information.

Tests RGAA : – · contrôle mw-alt-fichier

Éléments en cause

  • img
    <img src="mariniere.jpg" alt="mariniere.jpg">
5.6 À VÉRIFIERTableau sans cellule d'en-tête 1élément concerné

S'il s'agit d'un tableau de données, ses en-têtes doivent être balisés en th. S'il sert à la mise en page, ajouter role="presentation".

Correction suggérée

S'il s'agit d'un tableau de données, balisez les en-têtes en th scope="col" ou th scope="row" ; s'il sert à la mise en page, ajoutez role="presentation".

Tests RGAA : – · contrôle mw-tableau-sans-entete

Éléments en cause

  • table
    <table>
      <tbody><tr><td>Taille</td><td>Tour de poitrine</td></tr>
      <tr><td>M</td><td>96 cm</td></tr>
    </tbody></table>
7.1 À VÉRIFIERÉlément cliquable qui n'est ni un lien ni un bouton 1élément concerné

Un élément avec onclick sans rôle ni tabindex n'est pas utilisable au clavier ni annoncé aux lecteurs d'écran.

Correction suggérée

Remplacez l'élément par un vrai button type="button" (action) ou un lien a href (navigation).

Tests RGAA : – · contrôle mw-clic-non-interactif

Éléments en cause

  • span.btn
    <span class="btn" onclick="ajouter()">Ajouter au panier</span>
9.1 À VÉRIFIERSaut de niveau dans la hiérarchie des titres 1élément concerné

Un titre descend de plus d'un niveau (par exemple de h1 à h4). Vérifier que la structure reste cohérente.

Correction suggérée

Utilisez le niveau de titre qui suit logiquement (h2 après h1) et réglez la taille en CSS.

Tests RGAA : – · contrôle mw-saut-titre

Éléments en cause

  • h4
    <h4>Nos nouveautés</h4>
11.1 À VÉRIFIERChamp dont la seule étiquette est le texte indicatif (placeholder) 1élément concerné

Le RGAA ne retient pas le placeholder comme étiquette : il disparaît à la saisie. Ajouter un label, aria-label ou title.

Correction suggérée

Ajoutez une étiquette visible label : le texte indicatif peut rester, en complément.

Tests RGAA : – · contrôle mw-placeholder-seul

Éléments en cause

  • input
    <input type="email" placeholder="Votre e-mail">

EN CLAIR

En clair : les 5 problèmes les plus importants

Pour les personnes qui décident sans lire le code : ce que chaque problème change pour vos visiteurs. Les plus graves d'abord, puis les plus fréquents.

Des images n'ont pas de texte de remplacement

Pourquoi c'est important
Une image sans alternative est passée sous silence ou annoncée par son nom de fichier : un logo ou une icône de panier devient une énigme.
Qui est gêné
Les personnes aveugles, et tout le monde quand les images ne se chargent pas.
Sur la page analysée
2 éléments concernés (Bloquant, RGAA 1.1).

Une liste de choix n'a pas d'étiquette

Pourquoi c'est important
La personne ne sait pas ce qu'on lui demande de choisir, ni à quoi sert la liste. Dans un formulaire de commande, c'est un blocage.
Qui est gêné
Les utilisateurs de lecteur d'écran et de commande vocale.
Sur la page analysée
1 élément concerné (Bloquant, RGAA 11.1).

Un bouton n'a pas d'intitulé

Pourquoi c'est important
Le bouton est annoncé « bouton », sans dire ce qu'il fait : la personne hésite à l'activer, ou abandonne.
Qui est gêné
Les utilisateurs de lecteur d'écran et de commande vocale.
Sur la page analysée
1 élément concerné (Bloquant, RGAA 11.9).

Des textes sont trop pâles sur leur fond

Pourquoi c'est important
Un texte peu contrasté se lit mal, voire pas du tout. Quand il s'agit d'un prix, d'une promotion ou d'un bouton, l'information est perdue.
Qui est gêné
Les personnes malvoyantes, les seniors, et chacun sur un téléphone en plein soleil.
Sur la page analysée
2 éléments concernés (Majeur, RGAA 3.2).

Des liens n'ont pas d'intitulé

Pourquoi c'est important
Un lien sans intitulé est annoncé « lien », sans plus : impossible de savoir s'il mène au panier, au compte ou ailleurs.
Qui est gêné
Les utilisateurs de lecteur d'écran et de commande vocale, qui ne peuvent pas dire « cliquer sur Panier ».
Sur la page analysée
2 éléments concernés (Majeur, RGAA 6.2).

ET ENSUITE

Ce qu'un audit humain ajouterait

  1. Fait

    Pré-diagnostic automatique

    35 critères examinés sur 1 page.

  2. Audit humain

    Les 71 autres critères, au clavier et avec des lecteurs d'écran.

  3. Plan de correction

    Anomalies classées par priorité, avec la correction à apporter.

  4. Contre-vérification

    Contrôle des corrections une fois appliquées.

  • Les 71 critères que les tests automatiques ne couvrent pas, et la vérification complète des 35 autres.
  • La pertinence des textes : une alternative, un titre ou un intitulé présents mais qui ne disent rien d'utile.
  • Le parcours complet, au clavier seul et avec des lecteurs d'écran, jusqu'à la validation d'une commande ou d'un formulaire.
  • Les pages que le robot n'atteint pas : compte client, panier, formulaire de commande.
  • Un plan de correction priorisé, puis une contre-vérification après les corrections.

Voir un exemple d'audit approfondi sur la même boutique fictive

Demander un audit

Parlons de votre site : www.kevrea.fr/contact

Vous voulez corriger ces problèmes ?

Je peux reprendre ce rapport avec vous, compléter par un audit et corriger dans votre Drupal, Symfony ou WordPress.

Parler de votre site

Moteur d'analyse : axe-core 4.13.0 de Deque Systems, publié sous licence Mozilla Public License 2.0, avec son jeu de règles RGAA et sa traduction française. Les correspondances avec les critères du RGAA 4.1 sont celles d'axe-core.