Une femme utilisant un ordinateur portable

Utiliser aria-label pour donner une voix à vos élements web

Publié le

L'attribut aria-label est un élément crucial de l'Accessible Rich Internet Applications (ARIA), un ensemble de spécifications conçu pour améliorer l'accessibilité du web. Dans cet article, nous allons explorer en détail comment utiliser aria-label efficacement mais aussi quand ne pas l'utiliser.

Qu'est-ce que aria-label ?

L'attribut aria-label permet aux développeurs de fournir une étiquette textuelle alternative pour un élément lorsque le texte visible n'est pas suffisant ou n'existe pas. C'est un outil puissant pour améliorer l'accessibilité des sites web, en particulier pour les utilisateurs de technologies d'assistance.

Spécification W3C

Selon la spécification W3C (World Wide Web Consortium), aria-label est défini comme suit :

  • Il fournit une étiquette accessible pour les objets qui peuvent être lus par les technologies d'assistance.
  • Il est utilisé pour définir une chaîne qui étiquette l'élément courant.
  • Lorsqu'il est présent, il doit être utilisé à la place du contenu de l'élément pour créer l'étiquette accessible.

Exemples d'utilisation

Bouton sans texte visible

<button aria-label="Fermer" onclick="closeDialog()">X</button>

Icône dans un lien

<a href="https://twitter.com/profile" aria-label="Suivez-nous sur Twitter"><i class="fa fa-twitter"></i></a>

Champ de recherche

<input type="search" aria-label="Rechercher sur le site">

Navigation avec plusieurs menus

<nav aria-label="Menu principal">
    <!-- contenu du menu -->
</nav>
<nav aria-label="Menu secondaire">
    <!-- contenu du menu -->
</nav>

Bonnes pratiques d'utilisation

  • Utilisez aria-label pour les éléments sans texte visible
  • Assurez-vous que le label est concis et descriptif
  • Testez avec différentes technologies d'assistance

Limites et précautions

Limitations techniques

  • Non traduit : Le contenu de aria-label n'est pas automatiquement traduit par les outils de traduction de navigateur.
  • Non visible : Le texte n'est pas visible pour les utilisateurs qui n'utilisent pas de technologies d'assistance.
  • Surcharge potentielle : Une utilisation excessive peut rendre la navigation confuse pour les utilisateurs de lecteurs d'écran.

Éléments où aria-label n'est pas autorisé

Il est important de noter que l'attribut aria-label n'est pas autorisé pour certains rôles d'éléments. Ces rôles incluent : caption, code, definition, deletion, emphasis, generic, insertion, mark, none, paragraph, strong, subscript, suggestion, superscript, term, et time. L'utilisation de l'attribut aria-label sur ces éléments peut conduire à des problèmes d'accessibilité et à des comportements inattendus dans les technologies d'assistance.

Cas où ne pas l'utiliser

Éléments avec du texte visible

<p aria-label="Ceci est différent du texte visible">Texte visible sur la page</p>

Éléments de contenu longs

<article aria-label="Cet article parle de l'histoire de l'Internet depui sa création en..."><!-- Contenu de l'article --></article>

Éléments interactifs avec un libellé visible

<button aria-label="Soumettre le formulaire">Envoyer</button>

Champs de formulaire avec des étiquettes visibles (Préférez l'utilisation de <label>)

<input type="text" aria-label="Nom">

Alternatives à aria-label

aria-labelledby

<h2 id="titre">Mon titre</h2>
<div aria-labelledby="titre">Contenu associé au titre</div>

Attribut title

<button title="Cliquez pour soumettre le formulaire">Envoyer</button>

Texte caché visuellement

<button><span class="visually-hidden">Fermer</span>X</button>

Élément label

<label for="nom">Nom :</label><input id="nom" type="text">

Impact sur le SEO

  • Accessibilité améliorée : Un site plus accessible peut indirectement améliorer le référencement
  • Contexte supplémentaire : Les moteurs de recherche peuvent utiliser le contenu de aria-label pour mieux comprendre le contexte
  • Pas de sur-optimisation : Évitez de surcharger les aria-label avec des mots-clés pour le SEO
  • Cohérence : Assurez-vous que le contenu de aria-label est cohérent avec le contenu visible de la page

Sources

HTML Accessibilité

🎯 Optimisez vos interfaces pour une accessibilité optimale !

Besoin d'aide pour intégrer les meilleures pratiques en accessibilité sur votre site web ? Que ce soit pour utiliser les attributs ARIA, améliorer la navigation pour les utilisateurs de lecteurs d’écran ou optimiser l'expérience utilisateur, je suis là pour vous accompagner.

Discutons de vos projets web
La main d'un bébé sur le clavier d'un ordinateur portable. Comprendre les attributs ARIA pour améliorer l'accessibilité

Tour d'horizon des attributs ARIA essentiels: aria-label, aria-labelledby, aria-describedby, aria-description et aria-details pour améliorer l'accessibilité de vos pages web.

Un homme assis au bar, utilisant un ordinateur portable. Ambiance décontractée et moderne. Optimisez vos formulaires web avec l'élément input

Découvrez comment utiliser l'élément HTML input pour créer des formulaires. Apprenez à exploiter ses différents attributs pour améliorer l'expérience utilisateur.

Homme assis devant son ordinateur, les mains sur le clavier. Rendez vos formulaires accessibles avec l'élément <label>

Découvrez l'importance de l'élément HTML label pour améliorer l'accessibilité et l'interaction des utilisateurs avec les formulaires.