Dostępnik o ARIA 1.3
Jakoś mam wrażenie, że umknęło to uwadze środowiska. Pojawił się draft specyfikacji ARIA 1.3 i pomyślałem sobie, że mogę się pozastanawiać nad nowościami. Oczywiście sceptycznie!
Na początek muszę wyjaśnić, że ostatnio nie było Dostępnika, bo pies mi go zjadł. Człowiek się stara, a tu przychodzi takie bydle i porywa wspaniały tekst na 10000 znaków. Już go nie odzyskałem, więc muszę napisać nowy. A zatem…
Dostępność cyfrowa to obszar, który nieustannie ewoluuje. Standardy mają nam pomagać w tworzeniu stron i aplikacji dostępnych dla każdego. Wśród nich WAI-ARIA (Web Accessibility Initiative – Accessible Rich Internet Applications) odgrywa istotną rolę. Umożliwia dodawanie semantyki do dynamicznych treści i elementów interfejsu. Inaczej mogłyby być niedostępne dla technologii wspomagających.
Zupełnie niedawno pojawiła się nowa wersja tej specyfikacji – WAI-ARIA 1.3. Co to oznacza dla Ciebie jako twórcy stron internetowych, projektanta czy osoby zainteresowanej dostępnością? Przyjrzyjmy się najważniejszym zmianom i # nowościom. Zastanówmy się też, czy zawsze są one krokiem w dobrą stronę.
Co tam w ARIA 1.3?
ARIA 1.3 to kolejna odsłona standardu, który ma wspierać rozbudowane aplikacje internetowe. Jej celem jest zapewnienie, że komponenty interfejsu, które nie są natywnie dostępne (np. niestandardowe widżety, dynamiczne treści), mogą być poprawnie interpretowane przez technologie wspomagające. Ta wersja wprowadza nowe atrybuty oraz ulepszenia w istniejących. Teoretycznie daje to więcej precyzji w definiowaniu ról, stanów i właściwości elementów. Jeżeli znasz WCAG, to pewnie od razu zaświta Ci myśl, że chodzi o kryterium sukcesu 4.1.2. I bardzo słusznie.
Jednak zanim zaczniemy entuzjastycznie implementować nowości, warto pamiętać o złotej zasadzie: „No ARIA is better than Bad ARIA”. Zbyt często spotykam nieprawidłowe lub nadmierne użycie ARIA. Prowadzi to do pogorszenia dostępności, zamiast ją poprawić. Nowe atrybuty to nowe możliwości popełniania błędów.
Nowości w ARIA 1.3 i ich potencjalne pułapki
Nie będzie to dogłębna analiza, a jedynie zwrócenie uwagi na kilka konkretnych punktów. Dokument dostarcza więcej ról i właściwości, a część starszych rozszerza lub precyzuje.
Atrybut aria-description kontra aria-label i aria-describedby
Istotną zmianą jest dodanie atrybutu aria-description. Już wcześniej mieliśmy aria-describedby oraz aria-label. Warto zrozumieć subtelne, ale istotne różnice między nimi.
aria-label służy do dostarczenia zwięzłej, zastępczej nazwy dla elementu, który nie ma widocznej etykiety. Ewentualnie gdy widoczna etykieta jest niewystarczająca. Jest to krótki tekst, który jest pierwszym, co usłyszy użytkownik czytnika ekranu, gdy skupi się na danym elemencie. W algorytmie wyliczania dostępnej nazwy aria-label jest na samym szczycie.
aria-describedby służy do dostarczenia bardziej szczegółowego opisu dla elementu, który jest powiązany z innym elementem w DOM zawierającym ten opis. Opis jest zazwyczaj odczytywany po etykiecie lub roli elementu. Prościej mówiąc - jeżeli na stronie jest instrukcja, to ten atrybut służy do powiązania z nią jakiegoś komponentu.
aria-description (nowość w ARIA 1.3) pozwala na wbudowanie opisu bezpośrednio w atrybut, bez konieczności odwoływania się do innego elementu w DOM. Jest to alternatywa dla aria-describedby, przeznaczona do krótszych, kontekstowych opisów.
Na pierwszy rzut oka aria-description wydaje się uproszczeniem, ale czy zawsze jest to lepsze rozwiązanie niż aria-describedby? Bezpośrednie wbudowanie opisu może prowadzić do powielania treści, trudności w zarządzaniu dłuższymi opisami, a także problemów z lokalizacją. Jeśli opis jest zbyt długi, atrybut może stać się nieczytelny i trudny do zrozumienia. Ponadto, brak możliwości powiązania opisu z widocznym tekstem na stronie może sprawić, że będzie on trudniejszy do weryfikacji przez osoby testujące dostępność bez użycia technologii wspomagających.
Do zapamiętania:
aria-label to dostępna nazwa
aria-description to krótki, bezpośredni opis
aria-describedby to opis z referencji
Nadmierne użycie aria-description tam, gdzie wystarczyłby aria-label lub gdzie aria-describedby jest bardziej adekwatne, może prowadzić do bałaganu semantycznego.
Rola suggestion kontra autocomplete
ARIA 1.3 wprowadza nową rolę suggestion, która ma zastosowanie w polach wprowadzania tekstu, gdzie system proponuje sugestie użytkownikowi. Na przykład autouzupełnianie. Warto jednak zwrócić uwagę na to, jak to się ma do istniejących atrybutów autocomplete i ról związanych z listami.
Rola suggestion ma być używana dla pojedynczej sugestii, która może być wybrana. Na przykład w sytuacji, gdy użytkownik wpisuje tekst, a system podpowiada jedną, najbardziej pasującą frazę.
Atrybut autocomplete (HTML/ARIA): Jest to atrybut HTML (również rozszerzony przez ARIA) używany w polach formularzy do wskazania, że pole może być automatycznie uzupełniane przez przeglądarkę lub przez aplikację na podstawie wcześniej wprowadzonych danych lub zestawu predefiniowanych wartości.
Czy rola suggestion nie stworzy kolejnego rozdrobnienia semantyki, zamiast ujednolicić podejście do autouzupełniania? Należy uważać, aby nie wprowadzać kolejnych, subtelnych różnic, które mogą być ignorowane lub błędnie interpretowane przez różne implementacje. Istnieje ryzyko, że deweloperzy będą używać suggestion tam, gdzie bardziej odpowiedni byłby sprawdzony wzorzec combobox z aria-autocomplete="list". To mogłoby prowadzić do niespójnych doświadczeń dla użytkowników technologii wspomagających. Zawsze zastanów się, czy nowa rola wnosi realną wartość, czy tylko komplikuje i tak już złożony ekosystem.
Z drugiej strony - może taki element ułatwiłby tworzenie dostępnych comboboxów, które są często wyzwaniem dla cyfrowej dostępności. Jak zwykle - zależy od konkretnego wdrożenia.
Ulepszenia w istniejących rolach
ARIA 1.3 to także ulepszenia i doprecyzowania w istniejących rolach i właściwościach. Specyfikacja wprowadza bardziej szczegółowe wytyczne dotyczące użycia niektórych ról, takich jak feed czy math.
Rola feed: usprawnienia mają pomóc w prezentowaniu dynamicznych strumieni treści. Pytanie jednak, czy deweloperzy faktycznie będą prawidłowo implementować tę rolę i czy czytniki ekranu będą ją konsekwentnie wspierać.
Rola math: dla treści matematycznych, rola math została dopracowana. To krok w dobrym kierunku, ale złożoność treści matematycznych sprawia, że pełna dostępność nadal będzie wyzwaniem, niezależnie od roli ARIA.
Dlaczego ostrożność jest tak ważna?
Implementacja ARIA 1.3 to krok w kierunku rozwoju dostępności, ale z każdą nowością wiąże się ryzyko. Dla Ciebie, jako twórcy treści online, oznacza to nowe narzędzia, ale także nową odpowiedzialność za ich prawidłowe użycie. Pamiętaj, że dostępność to nie tylko zgodność ze standardami, ale przede wszystkim zapewnienie rzeczywistej użyteczności dla wszystkich.
Zbyt optymistyczne podejście do ARIA, bez zrozumienia jej złożoności i potencjalnych pułapek, może prowadzić do:
Fałszywego poczucia dostępności: myślisz, że strona jest dostępna, bo używasz ARIA, ale w rzeczywistości jest gorzej.
Komplikacji kodu: nadmierne i niepotrzebne użycie atrybutów ARIA sprawia, że kod jest trudniejszy do utrzymania i zrozumienia.
Problemów z kompatybilnością: nie wszystkie czytniki ekranu i przeglądarki wspierają ARIA w ten sam sposób, co może prowadzić do niespójnych doświadczeń.
Zwiększonego obciążenia poznawczego dla użytkownika: zbyt wiele komunikatów i szczegółowych informacji z ARIA może być przytłaczające dla użytkowników technologii wspomagających.
ARIA 1.3 to aktualizacja, która wnosi zarówno cenne nowości, jak i nowe wyzwania w świecie dostępności cyfrowej. Nowe atrybuty aria-uri i aria-description oraz ulepszenia w istniejących rolach mogą być przydatne, ale wymagają świadomego i przemyślanego zastosowania. Kluczowe jest zrozumienie, że ARIA to dodatek, nie substytut dla poprawnego semantycznie HTML. A nowe elementy mogą zarówno pomóc, jak i zaszkodzić, jeśli zostaną źle użyte.
Zachęcam Cię do szczegółowego zapoznania się ze specyfikacją na stronie W3C i do testowania każdego zastosowania ARIA w praktyce, z udziałem rzeczywistych użytkowników technologii wspomagających. Tylko w ten sposób upewnisz się, że faktycznie poprawiasz dostępność, a nie tworzysz nowe bariery. ARIA to potężne narzędzie, ale jak każde narzędzie, wymaga umiejętności i odpowiedzialności w użyciu.
Wieści o dostępności
Trochę się pochwalę, bo quizy opublikowane na deklaracja-dostepnosci.info zostały rozwiązane już 10000 razy! Nawiązując do tematu Dostępnika - sprawdź się w quizie dotyczącym właśnie ARIA. I jak Ci poszło?
Zaczynam się powoli przygotowywać do AutomaticA11y 2026. Na razie poskąpie szczegółów, ale postaram się tym razem trafić dokładnie w GAAD, który wypada 21 maja. Po tegorocznych zawirowaniach uprzedzam - nie przywiązuj się do tej daty, bo możesz nie dotrzeć.
Na 17 października zaplanowane jest już wydarzenie Sensorycznie i na serio. Będzie konferencja z motywem przewodnim dotyczącym kultury. Będzie też hackathon i dodatkowe wydarzenia. Wybieram się na samą konferencję, a także na hackathon. Zawsze brałem w takich imprezach udział jako mentor, a może teraz wybiorę sobie inną rolę.
Zapewne już wkrótce wyroją się kolejne terminy i miejsca, bo w tej branży najbardziej aktywnym czasem jest koniec roku. Jak tylko będę już miał jakieś informacje, to nie omieszkam dać Ci znać.
To o psie na początku to nie jest prawda. Przez ostatnie tygodnie żyłem dość aktywnie. Brałem udział w kilku projektach dotyczących dostępności i sztucznej inteligencji. O KoREKtorze już pisałem. O aplikacji do ETR jeszcze nie, bo jeszcze nie czas na to. O mapie dostępności napisze Piotr Osipa. Tak więc nastrój się!
Z moich prywatnych rzeczy - zakończyłem pracę w Certes sp. z o.o. Kibicuję Szkole Dostępności Cyfrowej, chociaż teraz raczej z boku. No i zarejestrowałem działalność gospodarczą. Nie robię tego często, bo ostatnio było to w 1993 roku. A co z tego będzie? Zobaczymy
Jeżeli lubisz Dostępnik albo mnie, to zachęcam Cię do ufundowania kawy. Ja wiem że to wygląda na sępienie, ale dla mnie ma zupełnie inny wydźwięk. To tak, jakbym usłyszał “dobra robota Jacek!” A do tego - piję naprawdę dużo kawy:)
I to by było na tyle. Deszczowy lipiec, więc pewnie Rafał Ziemkiewicz ma rację, że żadnego ocieplenia nie ma. A ja wątpiłem podczas oglądania jego filmu. Przekonywał przecież, że nie ma odnawialnej energii. Jeżeli czytasz ten ostatni akapit Dostępnika i świeżbi Cię, żeby mi nawrzucać, to nie rób tego. To są moje prywatne myśli, nie dotyczące dostępności. A moje poglądy polityczne chowam głęboko i nie jest łatwo je rozpoznać. A teraz życzę Ci dobrego wypoczynku i lepszej pogody.

