landmark-one-main
La page devrait avoir un landmark main
Vérifie que la page contient au moins un landmark main (role="main" ou <main>).
Applicabilité. Toujours applicable à tout document HTML doté d’un élément <body> : « la page a-t-elle un landmark main ? » est une question qui concerne la page entière, sur le modèle de bypass-blocks-present, qui évalue directement le document. Pas tant qu’une boîte de dialogue modale est ouverte : le reste de la page est alors inerte, si bien que l’analyse voit la boîte de dialogue, pas la page. Un élément personnalisé auquel ses ElementInternals donnent un rôle de landmark (this.attachInternals().role), sans attribut role qui en nomme un autre, est un landmark au même titre qu’un élément natif doté de ce rôle.
Attendu. La page contient au moins un landmark main (role="main" ou <main>) exposé aux technologies d’assistance. Sans lui, les utilisateurs de technologies d’assistance n’ont aucun landmark pour accéder directement au contenu principal.
Exemples
<body><main>Primary content</main></body>
Un landmark <main> existe.
<body><header>Site</header><p>Primary content, no landmark.</p></body>
Aucun <main> ni role="main" nulle part dans la page.
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.
LANDMARK_MAIN_MISSING
- Ouvrez la liste des repères d’un lecteur d’écran, ou le panneau Accessibilité, et cherchez un repère main.
- Repérez le contenu principal de la page et inspectez son conteneur pour y trouver un élément main ou role="main".
- Si le contenu se trouve dans un iframe, cherchez plutôt un main dans le document encadré.
Réussite. Un repère main existe et englobe le contenu principal de la page.
Échec. Aucun repère main n’est exposé : les utilisateurs ne peuvent pas aller directement au contenu principal, un manquement aux bonnes pratiques selon le rôle WAI-ARIA main (ARIA11).