N'utilisez pas role="application"

Pierre Jourdain le 26/07/2013 - Réagissez

Traduction de l'article en néerlandais Gebruik geen role="application"

Dans un post précédent, nous avons parlé de plusieurs rôles landmark WAI-ARIA. Si vous les utilisez dans vos pages, vous rendrez la navigation plus facile aux utilisateurs de lecteurs d'écran ainsi qu'à ceux qui naviguent avec le clavier. En ce qui concerne le landmark WAI-ARIA role="application" nous n'en avons pas parlé car vous ne devrez presque jamais l'utiliser dans vos sites web.

Que fait-il?

Lorsque vous utilisez role="application" pour un widget de la page web, le lecteur d'écran reçoit l'information que cette section doit s'utiliser comme une application de bureau. Toutes les fonctionnalités standard (Tabulation de lien en lien, utilisation des listes déroulantes avec les touches fléchées, annonce des titres et des listes, ...) que fournit le lecteur d'écran sont alors inhibées. Comme développeur, vous devrez tout reprogrammer vous-même..

A utiliser très rarement

On donne vite à un widget le nom d'application, mais cela ne signifie pas pour autant qu'on doive lui appliquer le role="application". Si le widget utilise les éléments HTML standards (listes déroulantes, cases à cocher, champs de saisie, liens, paragraphes,...), il n'y a pas de raison d'utiliser role="application". Les navigateurs et lecteurs d'écran ne doivent rien faire de particulier pour gérer ces éléments. Même si le widget est dynamique (comme un diaporama, vue arborescente, barre d'outil, menu, onglets,...), role="application" n'est pas nécessaire non plus. WAI-ARIA propose d'autres solutions ce qui fait que vous n'aurez pas besoin de programmer vous-même. Si vous utilisez les composants standards WAI-ARIA, les lecteurs d'écran seront plus à l'aise et vous n'aurez pas à réinventer la roue.

N'utilisez pas role="application" si cela n'est pas nécessaire. L'usage incorrect (lisez: inutile) de role="application" rend une page web ou une partie de celle-ci, totalement inutilisable pour les utilisateurs du clavier, les lecteurs d'écran et autres aides techniques. Le composant aura en effet, un tout autre comportement que celui attendu par l'utilisateur.

Quand l'utiliser?

Si votre widget est composé de moins de 10% de code HTML et est très interactif, role="application" peut être utile. Sont donc seulement concernés les widgets qui s'exécutent dans le navigateur mais qui sont plus proche d'une application de bureau que de contenu web.

Si vous l'utilisez, placez-le sur un seul élément. Celui qui contient le widget auquel il s'applique.

Encore une fois, si vous utilisez role="application", vous devrez vous-même programmer comment le widget va interagir avec le lecteur d'écran et le clavier et en apprendre le maniement à l'utilisateur. C'est un tout autre travail que de construire un site web et demandera des tests avec différents lecteurs d'écrans..

Conclusion

Vous n'allez presque jamais faire usage de role="application"!

Source: If you use the WAI-ARIA role "application", please do so wisely!

Réagissez

Les balises HTML suivantes sont autorisées: <a> <b> <ul> <li>