Interop 2024: Chrome mencapai 100% untuk area fokus aksesibilitas

Jocelyn Tran
Jocelyn Tran

Chrome memulai tahun ini dengan lulus 88,2% pengujian di area fokus aksesibilitas Interop 2024. Pada Juni 2024, kami pertama kali mencapai 100% dari pengujian yang lulus. Postingan ini menjelaskan pekerjaan yang kebetulan mencapai tujuan ini.

Apa saja yang termasuk dalam area fokus aksesibilitas?

Seperti setiap area fokus di Interop 2024, area aksesibilitas didefinisikan oleh serangkaian pengujian platform web untuk fitur yang dipilih. Pengujian yang ditargetkan dalam Interop 2024 untuk memastikan semua browser membuat nama yang dapat diakses dan peran yang dihitung di sebelumnya.

Nama yang aksesibel menyampaikan tujuan atau maksud elemen HTML. Hal ini membantu pengguna memahami untuk apa elemen itu dan bagaimana mereka dapat berinteraksi dengannya. Tujuan spesifikasi akun menentukan cara browser membuat {i>string<i} nama yang dapat diakses untuk sebuah elemen. Spesifikasi ARIA berisi panduan tentang cara yang dihitung.

Peran terkomputasi dari sebuah elemen adalah string yang mewakili peran seperti yang dikomputasi oleh mesin browser. Ini terutama digunakan di lingkungan developer, dan, misalnya, dalam fungsi WebDriver getComputedRole, mengaktifkan pengujian interoperabilitas.

Apa yang perlu dilakukan tim Chrome?

Ada dua bidang pekerjaan yang lebih besar yang perlu kami selesaikan—mengubah pemetaan peran ke peran umum dan menghapus peran yang tidak digunakan lagi. Lalu ada beberapa perbaikan dan fitur tambahan yang lebih kecil untuk diterapkan. Selain hal-hal berikut pekerjaan yang diselesaikan tim Chrome, kami juga berkolaborasi dengan Microsoft dalam perbaikan yang mereka lakukan pada Chromium untuk area fokus aksesibilitas.

Ubah pemetaan untuk peran tertentu ke peran umum

Mengubah pemetaan ke peran generik akan menghapus semantik aksesibilitas dari . Elemen generik tidak memberikan nilai pada hierarki aksesibilitas, sehingga tidak termasuk dalam struktur pohon. Hal ini membantu performa dan membuat struktur lebih kecil dan lebih mudah diurai untuk teknologi pendukung. Peran berikut adalah diubah ke peran umum.

  • <header> yang dicakupkan ke <main> atau elemen konten rubrik (<article>, <aside>, <nav>, atau <section>).
  • <footer> yang dicakupkan ke <main> atau elemen konten rubrik (<article>, <aside>, <nav>, atau <section>).
  • <aside> di dalam elemen konten rubrik (<article>, <aside>, <nav>, atau <section>) tanpa label aksesibilitas.
  • <section> tanpa nama yang dapat diakses.
  • Item daftar usang (<li>).

Untuk empat poin pertama, biasanya elemen-elemen ini dipetakan ke peran penting. Memiliki dua {i>landmark<i} dalam satu halaman dapat mempersulit navigasi, jadi membantu mengurangi penanda yang redundan sehingga halaman lebih mudah dijelajahi. Tujuan item terakhir biasanya mengindikasikan kesalahan oleh developer halaman, yaitu item daftar harus selalu berada di dalam daftar, oleh karena itu item usang akan diberikan peran.

Menghapus peran yang tidak digunakan lagi

Kami menghentikan penggunaan peran directory, dan memetakannya ke peran daftar. ARIA 1.2 menghentikan directory peran. Spesifikasi menjelaskan bahwa peran tersebut setara dengan peran list, dan developer harus menggunakan list. Untuk mempertahankan semantik lama konten yang menggunakan directory, kini dipetakan ke list di Chrome.

Perbaikan lainnya

Kami menambahkan dukungan untuk gridcell peran. Peran baru ini membedakan antara gridcell dan cell menjadi lebih jelas. gridcell dapat difokuskan, diedit, dan dapat dipilih, tidak seperti cell.

Kami menambahkan penghitungan peran penggantian. Sebelumnya, kita tidak memeriksa penggantian jadi jika peran pertama tidak valid, kami menggunakan peran lain, yang tidak apa itu mendetail dalam spesifikasi.

Beberapa peran hanya valid jika berada dalam konteks yang benar. Kami telah menambahkan pemeriksaan untuk penggunaan peran yang tidak valid, sebagai berikut:

  • Peran row harus di dalam table, grid, rowgroup, atau treegrid.
  • Peran rowgroup harus di dalam table, grid, tree, atau treegrid.
  • Peran listitem harus berada di dalam list.

Jika peran tidak valid, Chrome kini menggunakan informasi lain, seperti HTML , untuk mengomputasi peran alternatif.

Kita menandai thead dan tfooter sebagai disertakan dalam hierarki aksesibilitas. Sebelumnya, status ini ditandai sebagai diabaikan, tetapi masih disertakan dalam hierarki. Baru saja header tabel dan footer tabel dapat diuraikan oleh teknologi pendukung.


Meskipun perubahan ini mungkin tidak terlihat oleh sebagian besar developer, pada semua browser bekerja untuk memastikan bahwa semua itu bekerja dengan cara yang sama, kami memastikan bahwa berbagai peran diekspos dengan cara yang sama di mana saja.