Podręcznik
Wymagania zaliczenia
7. Dostępność cyfrowa
7.7. Atrybuty WAI-ARIA
Język HTML zapewnia różne funkcje poprawiające dostępność, a jedną z nich jest potężne narzędzie w postaci atrybutów WAI-ARIA (ang. Web Accessibility Initiative - Accessible Rich Internet Applications). Atrybuty WAI-ARIA rozszerzają semantykę HTML, dostarczając dodatkowych informacji technologiom wspomagającym, takim jak czytniki ekranu, w celu zwiększenia dostępności stron internetowych.
WAI-ARIA - Overview
WAI-ARIA zapewnia ramy dla dodawania atrybutów do elementów języka HTML w celu identyfikacji funkcji interakcji użytkownika, ich wzajemnych powiązań i bieżącego stanu. WAI-ARIA określa sposoby oznaczania wskazanych obszarów interfejsu użytkownika i współpracujących ze sobą struktur ich elementów składowych (jak np. odnośniki, przyciski, listy, tabele, itp.) jako np. menu, treści podstawowych, treści drugorzędnych, banerów informacyjnych i innych typów struktur. Przykładowo, dzięki WAI-ARIA programiści mogą identyfikować regiony stron i umożliwiać użytkownikom korzystającym wyłącznie z klawiatury łatwe nawigowanie między tymi regionami, bez konieczności wielokrotnego naciskania klawisza Tab.
WAI-ARIA obejmuje również rozwiązania mapujące kontrolki, złożone obszary interfejsów aplikacji i zdarzenia do interfejsów API wykorzystywanych przez narzędzia poprawiające dostępność (np. wspomniane już czytniki ekranowe). Pozwala to nadać znaczenie niestandardowym złożonym kontrolkom (takim jak np. przyciski, lisy rozwijane, widżety kalendarza, rozwijane menu itp.) i w konsekwencji uzyskać zrozumiały sposób nawigowania po takich kontrolkach przez osoby, które np. są niewidome.
WAI-ARIA zapewnia autorom stron i aplikacji internetowych następujące elementy:
https://www.w3.org/TR/wai-aria/
Choć jest to dokument opisujący rekomendacje WAI-ARIA bardzo precyzyjnie pod względem formalnym, jego lektura jest dość "ciężka". Z tego względu grupa W3C opublikowała szereg artykułów przedstawiających zalecenia WAI-ARIA w sposób pogrupowany względem zagadnień spotykanych w typowej praktyce twórców aplikacji internetowych. Zostały one wzbogacone o komentarze i przykłady. Zapraszam więc do (dość obszernej) lektury niżej wymienionych artykułów, które poruszają następujące zagadnienia:
WAI-ARIA - Overview
WAI-ARIA zapewnia ramy dla dodawania atrybutów do elementów języka HTML w celu identyfikacji funkcji interakcji użytkownika, ich wzajemnych powiązań i bieżącego stanu. WAI-ARIA określa sposoby oznaczania wskazanych obszarów interfejsu użytkownika i współpracujących ze sobą struktur ich elementów składowych (jak np. odnośniki, przyciski, listy, tabele, itp.) jako np. menu, treści podstawowych, treści drugorzędnych, banerów informacyjnych i innych typów struktur. Przykładowo, dzięki WAI-ARIA programiści mogą identyfikować regiony stron i umożliwiać użytkownikom korzystającym wyłącznie z klawiatury łatwe nawigowanie między tymi regionami, bez konieczności wielokrotnego naciskania klawisza Tab.
WAI-ARIA obejmuje również rozwiązania mapujące kontrolki, złożone obszary interfejsów aplikacji i zdarzenia do interfejsów API wykorzystywanych przez narzędzia poprawiające dostępność (np. wspomniane już czytniki ekranowe). Pozwala to nadać znaczenie niestandardowym złożonym kontrolkom (takim jak np. przyciski, lisy rozwijane, widżety kalendarza, rozwijane menu itp.) i w konsekwencji uzyskać zrozumiały sposób nawigowania po takich kontrolkach przez osoby, które np. są niewidome.
WAI-ARIA zapewnia autorom stron i aplikacji internetowych następujące elementy:
- role opisujące typ prezentowanego widżetu, takie jak „menu”, „treeitem”, „slider” i „progressbar”,
- role opisujące strukturę strony internetowej, takie jak nagłówki i regiony,
- właściwości opisujące bieżący stan widżetów, takie jak „zaznaczone” dla pola wyboru lub „tylko do odczytu” dla typowych kontrolek formularzy,
- właściwości definiujące aktywne regiony strony, których zawartość podlegać może aktualizacji w trakcie wyświetlania (np. bieżące notowania giełdowe),
- sposób na zapewnienie nawigacji za pomocą klawiatury dla elementów stron internetowych, takich jak te wymienione powyżej.
https://www.w3.org/TR/wai-aria/
Choć jest to dokument opisujący rekomendacje WAI-ARIA bardzo precyzyjnie pod względem formalnym, jego lektura jest dość "ciężka". Z tego względu grupa W3C opublikowała szereg artykułów przedstawiających zalecenia WAI-ARIA w sposób pogrupowany względem zagadnień spotykanych w typowej praktyce twórców aplikacji internetowych. Zostały one wzbogacone o komentarze i przykłady. Zapraszam więc do (dość obszernej) lektury niżej wymienionych artykułów, które poruszają następujące zagadnienia:
- wzorce, czyli przykłady zastosowań zaleceń WAI-ARIA do typowych elementów, z których buduje się strony internetowe (przyciski, odnośniki, menu, slidery, itp.)
- oznaczenia ról poszczególnych obszarów interfejsu aplikacji, np. nagłówek, stopka, treść główna, treść dodatkowa, nawigacja, podział na sekcje
- zapewnienie dostępnych nazw i opisów elementów interfejsów aplikacji
- zasady i metody tworzenia funkcjonalności strony internetowej, takie jak menu i siatki, a także interaktywne komponenty, takie jak paski narzędzi i okna dialogowe, obsługiwane za pomocą klawiatury
- zasady opisu siatek i tabel za pomocą atrybutów ARIA
- zasady opisu kontrolek służących do komunikowania wartości numerycznych (np. paski postępu, slidery, scroll-bary, wskaźniki numeryczne itp.)
- role strukturalne
- ukrywanie semantyki za pomocą roli "prezentacja"
Przed rozpoczęciem korzystania z atrybutów WAI-ARIA, należy także zapoznać się z artykułem, który wyjaśnia, dlaczego całkowity brak korzystania z atrybutów WAI-ARIA jest lepszym rozwiązaniem niż wykorzystanie ich w sposób błędny: