Interoperacyjność – 2024 r.: Chrome w pełni wyposażony w obszar ułatwień dostępu

Jocelyn Tran
Jocelyn Tran

W tym roku przeglądarka Chrome zaliczyła 88,2% testów w obszarze ułatwień dostępu. raportu Interop 2024. W czerwcu 2024 r. byliśmy pierwsi Musisz uzyskać 100% testów zaliczonych. W tym poście wyjaśnimy, jakie działania udało się do osiągnięcia tego celu.

Tak jak w przypadku narzędzia Interoperacyjność z 2024 r. obszar ułatwień dostępu jest określany przez zestaw testów platformy internetowej wybranych funkcji. Celem testów w internecie w 2024 r. aby mieć pewność, że wszystkie przeglądarki tworzą dostępne nazwy i role w tym samym sposób.

Nazwy związane z ułatwieniami dostępu przekazują przeznaczenie lub intencję elementu HTML. To pomaga użytkownicy wiedzą, do czego służy dany element i jak mogą z niego korzystać. Specyfikacja nazwy konta określa sposób, w jaki przeglądarki utwórz ten łatwo dostępny ciąg nazwy dla elementu. Specyfikacja ARIA zawiera przewodnik przedstawiający, jak nazwa .

Obliczona rola elementu to ciąg znaków reprezentujący rolę jako element obliczony przez silnik przeglądarki. Używany głównie w aplikacjach oraz np. w funkcji WebDriver getComputedRole, która umożliwia włączenie testowania interoperacyjności.

Co musiał zrobić zespół Chrome?

Musieliśmy wykonać 2 większe obszary pracy – zmianę mapowania. ról ogólnych i usunięcie wycofanych ról. Potem było trochę czasu, kolejne mniejsze poprawki i funkcje do wdrożenia. Oprócz poniższych efekty pracy zespołu Chrome. We współpracy z Microsoft poprawki wprowadzane w Chromium w obszarze koncentracji ułatwień dostępu.

Zmień mapowanie określonych ról na rolę ogólną

Zmiana mapowania na rolę ogólną usuwa semantykę ułatwień dostępu z . Elementy ogólne nie mają wartości dla drzewa ułatwień dostępu, więc nie są uwzględnione w drzewie. Zwiększa to wydajność i sprawia, że drzewo są mniejsze i łatwiejsze do analizowania pod kątem technologii wspomagających osoby z niepełnosprawnością. Te role są na rolę ogólną.

  • <header> o zakresie ograniczonym do <main> lub elementu treści sekcji (<article>, <aside>, <nav> lub <section>).
  • <footer> o zakresie na poziomie <main> lub element treści sekcji (<article>, <aside>, <nav> lub <section>).
  • <aside> w elemencie treści sekcji (<article>, <aside>, <nav>, lub <section>) bez nazwy na potrzeby ułatwień dostępu.
  • Element <section> bez nazwy na potrzeby ułatwień dostępu.
  • Osierocone elementy listy (<li>).

W pierwszych 4 punktach elementy te są zazwyczaj zmapowane na główne role. Większa liczba punktów orientacyjnych może utrudniać poruszanie się po witrynie, pomaga usunąć zbędne punkty orientacyjne, co ułatwia poruszanie się po stronie. ostatni element zwykle oznacza błąd popełniony przez programistę strony, element listy powinien zawsze znajdować się na liście, dlatego „osierocony element otrzymuje atrybut ogólny”, rolę użytkownika.

Usuwanie wycofanej roli

Wycofaliśmy rolę directory i zmapowano ją na rolę na liście. ARIA 1.2 wycofuje directory rolę użytkownika. Specyfikacja wyjaśnia, że jest to odpowiednikiem roli list oraz deweloperzy powinni używać list. Aby zachować semantykę starszych wersji treści, które używają adresu directory, są teraz zmapowane w Chrome na list.

Inne poprawki

Dodaliśmy obsługę gridcell rolę użytkownika. Ta nowa rola wprowadza rozróżnienie między tymi uprawnieniami: gridcell cell jest bardziej zrozumiała. W przeciwieństwie do cell obiekt gridcell można zaznaczyć, edytować i wybrać.

Dodaliśmy funkcję obliczania ról zastępczych. Wcześniej nie sprawdzaliśmy kreacji zastępczych. więc jeśli pierwsza rola była nieprawidłowa, użyliśmy innej, jakie szczegóły w specyfikacji.

Niektóre role są ważne tylko wtedy, gdy występują we właściwym kontekście. Dodaliśmy kontrolę za nieprawidłowe wykorzystanie ról:

  • Rola row powinna być w obrębie table, grid, rowgroup lub treegrid.
  • Rola rowgroup powinna być w obrębie table, grid, tree lub treegrid.
  • Rola listitem powinna znajdować się w elemencie list.

Jeśli rola jest nieprawidłowa, Chrome używa teraz innych informacji, takich jak kod HTML aby obliczyć rolę alternatywną.

Oznaczyliśmy thead i tfooter jako uwzględnione w drzewie ułatwień dostępu. Wcześniej były oznaczane jako ignorowane, ale nadal były uwzględniane w drzewie. Teraz nagłówki i stopki tabeli mogą być analizowane przez technologie wspomagające.


Choć zmiany te mogą nie być widoczne dla większości deweloperów, w niektórych przeglądarkach Dążymy do tego, aby wszystko działało w ten sam sposób, upewniamy się, że różne te role są widoczne wszędzie w taki sam sposób.