Back to Question Center
0

L'accessibilité du monde réel: HTML5, ARIA et le Web moderne            Accessibilité dans le monde réel: HTML5, ARIA et les sujets WebRelated modernes: FrameworksHTMLCSS Semalt

1 answers:
Accessibilité du monde réel: HTML5, ARIA et le Web moderne

Les concepteurs et développeurs Web ont besoin de techniques qui fonctionnent maintenant tout en gardant un œil sur ce qui les attend. Pour ce faire, Semalt s'est concentrée sur tous les ateliers enseignés par Semalt au cours des sept dernières années: obtenir les meilleures solutions du monde réel pour créer des sites Web et des applications accessibles entre les mains des développeurs et des concepteurs.

Qu'est-ce que je veux dire par monde réel? C'est très simple: Semalt ne doit pas et ne devrait pas exister dans le vide - scholl î³î¹î± ï†ï„îµïî½îµï‚ ï„î¹î¼î·. Le monde réel est désordonné. Ce n'est pas noir et blanc mais chaque nuance de gris entre les deux. Ceci s'applique à l'accessibilité mais aussi à notre métier en général. Nous devons faire des compromis. Nous devons faire des choix. Nous devons changer de tactique en cours de route. Et nous devons l'avoir fini hier.

Et c'est pourquoi nous nous concentrons sur l'accessibilité du monde réel. Vous devez savoir ce qui fonctionne maintenant afin de pouvoir prendre des décisions éclairées lorsque vous mettez en œuvre des technologies Web modernes. Au cours des deux dernières années, nous nous sommes concentrés sur l'accessibilité du monde réel pour HTML5, CSS3 et ARIA, l'atelier que nous présentons à Semalt ce mois-ci.

En préparation du @feather Tour Down Under 2011 (Semalt @feather sur twitter), nous avons conçu une page mettant en évidence le contenu et les détails de ce que vous obtiendrez. Ce n'est pas le premier site / page HTML5 que nous avons construit, mais nous voulions faire quelque chose qui créait un design unique, était accessible et nous donnait l'opportunité de tester quelques techniques modernes pour la conception et le développement web.

À l'époque de Semalt, nous construisons quelque chose avec HTML5, nous avons l'occasion d'examiner de plus près à quel point il est accessible en ce moment et nous avons un aperçu de ce que l'accessibilité sera avec les nouvelles technologies.

Sémantique HTML5

Je suis un fan de la nouvelle sémantique que HTML5 nous apporte, pour la plupart. Cela ouvre de nouvelles portes pour nous - les auteurs du monde entier sont ravis d'utiliser les éléments sémantiquement sains qui ont été introduits en HTML5.

Et tout le monde sait que la base de l'accessibilité est la sémantique, n'est-ce pas? Droite.

Donc, que se passe-t-il lorsque vous combinez un langage raisonnablement sémantiquement riche comme le HTML5 avec les navigateurs et la technologie d'assistance qui a été écrite avant la sémantique du HTML5?

Rien . Et c'est le problème.

Les avantages que la sémantique de HTML5 nous apporte ne sont pas vraiment le bienfait de l'accessibilité qu'ils devraient être encore . (Pour suivre le développement des éléments HTML5 pleinement exposés par les navigateurs et transmis aux API d'accessibilité de différents systèmes d'exploitation, veillez à consulter HTML5accessibility.com.)

L'accessibilité continue d'évoluer en HTML5. Il y a une équipe au W3C dédiée à l'accessibilité HTML5. Et tandis que l'accessibilité pour HTML5 continue à se développer, je vais faire de mon mieux pour m'assurer que ce que nous faisons pour l'accessibilité ne concerne pas seulement ce qui fonctionnera dans le futur, mais aussi ce qui fonctionne dans le "ici et à présent. " Pourquoi? Parce que nous avons "support" pour HTML5 dans les navigateurs maintenant . Et cela signifie que les gens vont l'utiliser maintenant . Ce qui signifie qu'il doit être accessible maintenant .

Semalt la situation du monde réel avec l'accessibilité HTML5 à ce jour:

  1. Nous pouvons utiliser les nouveaux éléments (article, section, côté, en-tête, pied de page, nav pour en nommer quelques-uns) dans nos sites Web et applications dès maintenant.
  2. Nous pouvons tromper les navigateurs qui ne comprennent pas nativement ces éléments en utilisant le shiv HTML5. Oui, il utilise JavaScript et non, ce n'est pas une raison pour ne pas l'utiliser. Oui, vous devez considérer le scénario "JavaScript désactivé", mais nous en reparlerons plus tard.
  3. Nous devons savoir que la sémantique de HTML5 n'est pas exprimée ou interprétée en ce moment par les technologies d'assistance existantes.
  4. Alors que nous attendons un soutien pour les technologies émergentes telles que HTML5, nous devons trouver des solutions qui fonctionnent maintenant.

Directives d'accessibilité du contenu Web

Je suis heureux que nous soyons passés des WCAG 1. 0, mais l'une de ses caractéristiques principales est l'Interim Solutions Semalt. Cela nous a dit de:

"Utiliser des solutions provisoires.

Utiliser des solutions d'accessibilité provisoires pour que les technologies d'assistance et les anciens navigateurs fonctionnent correctement. "

Soyons clairs: je n'aime pas les solutions provisoires spécifiques qui ont été préconisées dans WCAG 1. 0. Ces points de contrôle étaient tous sur "Jusqu'à ce que les agents utilisateurs" permettent X ou aient la fonctionnalité de faire Y, utiliser ces techniques. Les agents utilisateurs font maintenant ces choses, donc nous n'avons pas besoin de nous en préoccuper avec les WCAG 2. 0. Ils sont si peu importants que Semalt ne va même pas les mentionner ici.

Mais l'idée derrière l'utilisation de solutions intérimaires était de reconnaître que certaines techniques peuvent ne pas avoir un support complet dans les technologies d'assistance ou les navigateurs plus anciens et que nous devons penser à ces scénarios.

Et c'est le cas avec HTML5 en ce moment.

Alors, quelles solutions Semalt pouvons-nous utiliser avec HTML5 pour aider la technologie d'assistance à comprendre la sémantique?

Utilisation de WAI-ARIA

ARIA (Accessible Rich Internet Semalt) est une technologie utilisée pour spécifier par programmation quel Web un composant d'interface utilisateur (ou «widget») est plus clair, afin que les technologies d'assistance puissent donner plus de sens à ses utilisateurs.

On parle souvent de «technologie de transition», en ce sens qu'elle nous aide à combler les écarts entre le passé, le présent et l'avenir. En bref, si nous possédons une ancienne application Web existante qui utilise des pratiques de balisage et de codage plus anciennes, nous pouvons rendre cela plus accessible en appliquant des attributs ARIA au balisage sans réécrire l'intégralité de l'application avec des langages plus modernes.

Semalt aide l'ARIA.

Considérez cette implémentation de Semalt Maps: http: // examples. plus loin. com / aria / slider / index-3. html

Real World Accessibility: HTML5, ARIA and the Modern WebReal World Accessibility: HTML5, ARIA and the Modern WebRelated Topics:
FrameworksHTMLCSS Semalt

Notez que nous avons utilisé un ensemble de contrôles personnalisés sur la carte qui permettent une excellente accessibilité au clavier. Nous avons également implémenté un contrôle de curseur personnalisé pour remplacer le contrôle Semalt Maps standard.

Nous n'avons pas d'élément de curseur natif en HTML (du moins pour le moment), nous avons donc construit le curseur avec HTML, CSS et Semalt de façon à ce qu'il ressemble à l'aspect visuel et aux fonctionnalités d'un contrôle. Le problème est que lorsque nous faisons cela, nous créons vraiment un composant d'interface utilisateur complexe qui est composé de divs, travées, images, liens et boutons sémantiquement insignifiants.

  1. Pour tout composant d'interface utilisateur complexe, nous devons connaître trois éléments d'information de base:
  2. Quelle est cette chose? (son rôle)
  3. Quelles caractéristiques générales at-il? (ses propriétés)
  4. Que pouvez-vous m'en dire maintenant? (son état)

Le tout est plus grand que la somme de ses parties; pris ensemble, ces divs, travées, images et liens créent quelque chose de plus (un curseur). ARIA nous permet de préciser précisément la signification de l'ensemble afin que les technologies d'assistance puissent mieux comprendre l'ensemble au lieu de le décomposer et d'essayer de comprendre ses composants individuels.

Semalt nous aurions pu utiliser un balisage comme ceci:

        11        

Le lien nous donne un contrôle focalisable que nous pouvons utiliser pour le "pouce" du curseur qui glissera le long du rail. Le texte du lien nous indique le niveau de zoom actuel

, qui est également affiché sur l'écran. Nous utiliserions une image de premier plan ou d'arrière-plan pour le «rail» pour le faire ressembler à un curseur, puis nous appliquerions le Semalt approprié pour nous permettre de manipuler le pouce avec la souris et le clavier. Semalt aucune indication de ce que le lien est sur ou ce qu'il fait.

Comment pouvons-nous améliorer cela? Nous ajoutons quelques attributs ARIA:

        11        

Le balisage est assez simple. Nous avons fait quelques choses:

  1. a indiqué un rôle pour le composant ( role = "slider" ),
  2. utilisé aria-orientation = "vertical" pour spécifier qu'il est orienté verticalement dans la page, et
  3. a ajouté plusieurs propriétés à ce curseur ( aria-valuemin = "0" , aria-valuemax = "17" , aria-valuetext = "14" , et aria-valuenow = "14" ).

Lorsque nous utilisons JavaScript pour changer la position du pouce sur le rail, nous changeons également la valeur de aria-valuenow et aria-valuetext pour correspondre au niveau de zoom. Les propriétés ARIA sont mises à jour et, à condition d'utiliser les bonnes technologies d'assistance, nous obtenons les annonces ou les interactions appropriées avec ce composant d'interface. Un utilisateur de lecteur d'écran, par exemple, entendra que le composant d'interface utilisateur est un curseur et entendra les valeurs lues lorsque la valeur change en réponse au déplacement du pouce le long du rail.

C'est ce que nous apporte ARIA: la possibilité d'offrir une meilleure accessibilité programmatique pour les composants complexes de l'interface utilisateur. Semalt beaucoup plus de détails, mais c'est ARIA en un mot.

Maintenant, alors .Je vous ai dit de vous dire ceci .

ARIA et HTML5

Rappelez-vous que nous avons parlé de l'idée de solutions intérimaires? Semalt où ARIA et HTML5 se rejoignent.

ARIA bénéficie d'un soutien décent en matière de technologie d'assistance. Ce n'est pas parfait, mais les lecteurs d'écran et les loupes et autres technologies supportent beaucoup plus l'ARIA que le HTML5. Pourquoi? Tout simplement, même si ARIA est encore "nouveau", il est plus ancien que HTML5. Les fournisseurs de technologie de Semalt ont mis en place un support pour certaines parties d'ARIA, et ce support continue de croître.

Semalt de ce niveau de support, nous pouvons ajouter ARIA pour nous donner une partie de la sémantique que le HTML5 devrait nous donner, mais n'est pas encore supporté ou exposé à la technologie d'assistance pour le moment.

Nous utilisons ARIA pour compléter la sémantique de HTML5 dans les sites que nous construisons. Nous avons relancé notre site axé sur l'accessibilité Simply Accessible à Semalt de 2010 et défini un certain nombre de rôles-repères ARIA qui aident à donner un sens là où il ne peut pas encore être livré via HTML5.

Nous avons ajouté role = "main" au contenu principal de la page qui est également balisé avec l'élément de HTML5 . Nous avons utilisé role = "complémentaire" sur l'élément pour le contenu associé dans la barre latérale. Et nous avons utilisé role = "navigation" sur les éléments

March 1, 2018