Birlikte çalışabilirlik 2024: Chrome, erişilebilirlik odak alanı için% 100'de

Jocelyn Tran
Jocelyn Tran

Chrome, Interop 2024'ün erişilebilirlik odaklı alanındaki testlerin% 88,2'sini geçerek yılı başlattı. Haziran 2024'te, testlerin% 100'ünün geçtiği ilk platform olduk. Bu yayında, bu hedefe ulaşmak için yapılan çalışmalar açıklanmaktadır.

Interop 2024'teki her odak alanında olduğu gibi erişilebilirlik alanı da, seçili özellikler için bir dizi web platformu testiyle tanımlanır. Interop 2024'teki testler, tüm tarayıcıların erişilebilir adlar ve hesaplanmış rolleri aynı şekilde oluşturmasını sağlamayı amaçlar.

Erişilebilir adlar, bir HTML öğesinin amacını veya niyetini belirtir. Bu, kullanıcıların öğenin ne işe yaradığını ve öğeyle nasıl etkileşime geçebileceklerini anlamalarına yardımcı olur. accname spesifikasyonu, tarayıcıların bir öğe için bu erişilebilir ad dizesini nasıl oluşturduğunu tanımlar. ARIA spesifikasyonunda bu adın nasıl hesaplandığına dair bir açıklama yer alır.

Bir öğenin hesaplanmış rolü, tarayıcı motoru tarafından hesaplandığı şekilde öğenin rolünü temsil eden bir dizedir. Bu, birincil olarak geliştirici araçlarında ve örneğin WebDriver işlevinde getComputedRole kullanılır. Böylece birlikte çalışabilirlik testi etkinleştirilir.

Chrome ekibinin yapması gerekenler nelerdi?

Tamamlamamız gereken iki büyük çalışma alanı vardı: rollerin eşlemesini genel rollerle değiştirme ve desteği sonlandırılan rolleri kaldırma. Ayrıca, uygulanacak bazı küçük düzeltmeler ve özellikler de vardı. Chrome ekibinin tamamladığı aşağıdaki çalışmalara ek olarak, erişilebilirlik odaklı alan için Chromium'a yaptıkları düzeltmelerle ilgili olarak Microsoft ile de işbirliği yaptık.

Belirli rollerin eşlemesini genel bir rolle değiştirme

Bir eşlemenin genel role değiştirilmesi, erişilebilirlik semantiklerini öğeden kaldırır. Genel öğeler, erişilebilirlik ağacına değer sağlamadığından ağaca dahil edilmez. Bu, performansa yardımcı olur ve ağacı daha küçük hale getirir. Ayrıca, ağacı yardımcı teknolojiler için ayrıştırmak daha kolay olur. Aşağıdaki roller genel bir role dönüştürülür.

  • <main> kapsamlı bir <header> veya bölümlendirme içerik öğesi (<article>, <aside>, <nav> veya <section>).
  • <main> kapsamlı bir <footer> veya bölümlendirme içerik öğesi (<article>, <aside>, <nav> veya <section>).
  • Erişilebilir adı olmayan bir bölümlendirme içerik öğesi (<article>, <aside>, <nav> veya <section>) içinde <aside>.
  • Erişilebilir adı olmayan bir <section>.
  • Artık durumdaki liste öğeleri (<li>).

İlk dört madde işareti için bu öğeler genellikle landmark rolleri ile eşlenir. Bir sayfada çok fazla yer işareti olması, sayfanın gezinmesini zorlaştırabilir. Bu nedenle, bu değişiklik, gereksiz yer işaretlerini azaltarak sayfanın gezinmesini kolaylaştırır. Son öğe genellikle sayfa geliştiricisinin yaptığı bir hatayı gösterir. Liste öğeleri her zaman bir listenin içinde olmalıdır. Bu nedenle, ebeveyni olmayan öğelere genel bir rol verilir.

Desteği sonlandırılan bir rolü kaldırma

directory rolünü kullanımdan kaldırdık ve liste rolüyle eşledik. ARIA 1.2, directory rolünün desteğini sonlandırdı. Spesifikasyonda, list rolüne eşdeğer olduğu ve geliştiricilerin list kullanması gerektiği açıklanmaktadır. directory kullanan eski içeriğin anlamsallığını korumak için bu karakter artık Chrome'da list ile eşlenir.

Diğer düzeltmeler

gridcell rolü için destek ekledik. Bu yeni rol, gridcell ile cell arasındaki farkı daha net hale getirir. gridcell, cell'den farklı olarak odaklanılabilir, düzenlenebilir ve seçilebilir.

Yedek rol hesaplaması eklendi. Daha önce yedek rolleri kontrol etmiyorduk. Bu nedenle, ilk rol geçerli değilse başka bir rol kullanıyorduk. Bu, özellikte açıklanan yöntem değildir.

Bazı roller yalnızca doğru bağlamda geçerlidir. Rollerin geçersiz kullanımı için aşağıdaki şekilde bir kontrol ekledik:

  • row rolü table, grid, rowgroup veya treegrid içinde olmalıdır.
  • rowgroup rolü table, grid, tree veya treegrid içinde olmalıdır.
  • listitem rolü list içinde olmalıdır.

Rol geçersizse Chrome artık alternatif bir rol hesaplamak için HTML öğesi gibi diğer bilgileri kullanır.

thead ve tfooter'u erişilebilirlik ağacına dahil olarak işaretledik. Daha önce yoksayılmış olarak işaretlendikleri halde ağaca dahil ediliyorlardı. Artık tablo üstbilgileri ve tablo altbilgileri yardımcı teknolojiler tarafından ayrıştırılabilir.


Bu değişiklikler çoğu geliştirici tarafından fark edilmeyebilir. Ancak tüm tarayıcılar bu değişikliklerin aynı şekilde çalışmasını sağlamak için çalıştığından farklı rollerin her yerde aynı şekilde gösterilmesini sağlarız.