ARIA, wszędzie ARIA

Mam z bajki Toy Story - Aria, wszędzie aria

Od jakiegoś czasu obserwując serwisy internetowe podczas audytów, konsultacji i rankingów jak np. Raport Dostępności 2016 zauważyłem pewną tendencję. Polega ona na wstawianiu atrybutów ARIA do każdego możliwego elementu na stronie powodując bardzo poważne problemy w ich obsłudze przez osoby korzystające z programów czytających. Po fatalnych rezultatach podczas testów nie sądzę, aby to było świadome działanie.

The 100-105 itexamlab.com day has past delightfully. Delight 400-101 pdf itself, however, is a weak term to express the 400-101 pdf feelings of a naturalist who, 100-105 itexamlab.com for the first time, 100-105 itexamlab.com has been wandering by himself 300-115 questions in a Brazilian forest. Among the multitude 300-115 questions of striking objects, the general 100-105 itexamlab.com luxuriance of the 300-115 questions vegetation bears away the 400-101 pdf victory. The elegance of the grasses, the novelty of the parasitical 400-101 pdf plants, the beauty of the flowers, 300-115 questions the glossy green of 100-105 itexamlab.com the foliage, 400-101 pdf 300-115 questions all tend to this 400-101 pdf end. A most paradoxical mixture of 400-101 pdf sound 400-101 pdf and silence pervades the shady parts of the 100-105 itexamlab.com wood. 300-115 questions

After wandering about for 300-115 questions some hours, I returned 100-105 itexamlab.com to the 400-101 pdf landing-place; 300-115 questions 300-115 questions 100-105 itexamlab.com but, 100-105 itexamlab.com before reaching it. 300-115 questions I was overtaken by a tropical storm. 1 tried to 300-115 questions find shelter under a tree which 100-105 itexamlab.com 400-101 pdf was so thick that 400-101 pdf 300-115 questions 400-101 pdf it would 400-101 pdf never have been penetrated by common English rain; but here, 400-101 pdf in a couple of 100-105 itexamlab.com minutes, a 400-101 pdf little torrent 400-101 pdf 300-115 questions flowed down the trunk. 300-115 questions It is to this violence 100-105 itexamlab.com of the rain 100-105 itexamlab.com we must attribute the verdure at the 100-105 itexamlab.com bottom of the thickest woods: 300-115 questions if the showers were like those of a colder 300-115 questions climate, the greater part would be absorbed or 100-105 itexamlab.com evaporated 100-105 itexamlab.com before it reached the ground. I will not at present attempt to describe the gaudy scenery of this noble bay, because, in our homeward voyage, we called here a second time, and I shall then have occasion to remark on it.

Postanowiłem zatem rozpocząć serię wpisów ze swoimi subiektywnymi przemyśleniami dotyczącymi stosowania ARIA na stronach internetowych. Mam nadzieję, że ten cykl ułatwi wszystkim zainteresowanym tematem zrozumieć do czego ARIA służy i jak stosować.

Co to jest ARIA?

WAI-ARIA (Accessible Rich Internet Applications) to najprościej opisując zbiór atrybutów dodawanych do znaczników HTML. Od 2014 roku znajduje się w oficjalnej specyfikacji WCAG 2.0 jako jedna z technik wspierających dostępność (Zobacz „Techniki ARIA”). Atrybuty te pozwalają na zwiększenie dostępności treści i funkcjonalności serwisów internetowych dla osób z dysfunkcjami. Przede wszystkim dotyczy to osób niewidomych i niedowidzących posługujących się programami czytającymi.
Programy te udostępniają użytkownikowi m.in. skróty klawiaturowe, umożliwiające przemieszczanie się po aktualnie wyświetlonej w przeglądarce stronie internetowej. Bazują one na semantycznych znacznikach HTML. Przykładowo, korzystając z darmowego czytnika NVDA:

  • chcąc zapoznać się z głównymi sekcjami na stronie można przy użyciu klawisza „H” poruszać się pomiędzy nagłówkami (znaczniki <h1>-<h6>).
  • żeby odnaleźć formularz użyjemy klawisza „F” (znacznik <form>).
  • dzięki klawiszowi „K” przejdziemy do odnośnika (znacznik <a href="">. Celowo dodałem atrybut href, ponieważ sam znacznik <a> linkiem nie jest).

Tych skrótów jest oczywiście dużo więcej, a wszystkie opisane są na stronie „Pierwsze kroki w NVDA”.

W czym problem?

Przedstawiony wcześniej sposób nawigacji w znacznym stopniu przyśpiesza i ułatwia zrozumienie informacji. Oczywiście jeśli założymy, że kod HTML strony www jest semantycznie poprawny. Wygląda to wspaniale dopóty, dopóki nie napotkamy na stronie np.:

  • wyskakujących okienek dialogowych,
  • suwaków do obliczania np. rat kredytu,
  • komunikatów przy formularzach walidowanych po stronie klienta,
  • ostrzeżeń,
  • zakładek,
  • kalkulatorów,
  • interaktywnych wykresów,
  • i wszystkich innych rzeczy generowanych przez JavaScript.

Większość wymienionych wyżej elementów powstaje poprzez dynamiczne zmiany w źródle strony  wprowadzane za pomocą JavaScript i żadne z nich nie posiada swojego odpowiednika w HTML.

Przykład

Wyobraźmy sobie sytuację, w której użytkownik zakłada konto na portalu ogłoszeniowym i wypełnia formularz. Przechodzi przez wszystkie pola, jednak w wymaganym polu „Adres e-mail” popełnia literówkę i nie wpisuje kropki np. „przemek@nazwastronypl”. Przechodzi do przycisku „Zarejestruj się” i klika, a właściwie używa klawisza Enter. Nic się nie dzieje. Jeszcze raz Enter i dalej nic.

Użytkownik widzący zobaczy w tym momencie pod polem „Adres e-mail” ładny czerwony komunikat „Niepoprawny format adresu e-mail”. Został on dodany przez skrypt „wstrzykując” kod HTML.
Użytkownik niewidomy jednak cały czas znajduje się na przycisku i nie wie, że coś nagle pojawiło się w innej części serwisu. Musi się domyślić, że popełnił błąd i odsłuchiwać linia po linii wszystkie treści znajdujące się powyżej.

… i tu z odsieczą przychodzi ARIA.

Kłopot polega na tym, że w większości przypadków tam gdzie ARIA powinna się znaleźć niestety jej nie ma, a jeżeli już jest, to zazwyczaj została użyta źle lub niepotrzebnie.

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

11 + = 21