Kapslad aria-hidden
Silktide kontrollerar om innehåll som markerats som synligt för finns inuti en behållare som markerats som dold för den. Dold-statusen vinner: den inre markeringen har ingen effekt och innehållet förblir dolt.
<!-- Problem: stycket förblir dolt trots aria-hidden="false" -->
<div aria-hidden="true">
<p aria-hidden="false">Viktigt innehåll</p>
</div>
Varför detta är viktigt
När ett element har aria-hidden="true" tas allt innehåll i det bort
från . Standarden
erbjuder inget sätt för ett underordnat element att
åter inkluderas – aria-hidden="false" inuti en dold behållare
gör helt enkelt ingenting. Författare som använder detta mönster tror att de
har gjort det inre innehållet synligt igen. Resultatet blir därför innehåll
som seende användare kan se men som användare av
inte kan nå, utan att någon är medveten om skillnaden.
Så åtgärdar du det
- Strukturera om uppmärkningen så att innehållet som ska exponeras inte finns inuti den dolda behållaren – flytta ut det så att det blir ett syskon i stället för ett underordnat element.
- Om allt inuti behållaren faktiskt ska vara tillgängligt tar du bort
aria-hidden="true"från det överordnade elementet. - Förlita dig aldrig på
aria-hidden="false"för att upphäva ett överordnat elements dolda tillstånd. När åtgärden är genomförd kan det inre attributet vanligtvis också tas bort.
Så testar Silktide detta
- Hitta varje element på sidan med
aria-hidden="false". - Gå upp genom dess överordnade element och leta efter element med
aria-hidden="true". - Rapportera varje element vars
aria-hidden="false"är instängt i ett dolt överordnat element.
Felsökning
Ett skript växlar det överordnade elementets aria-hidden
Silktide testar sidan när den läses in. Om det dolda tillståndet bara finns
under en kort stund innan ett skript tar bort det, återspeglar resultatet det
ursprungliga tillståndet – men observera att användare av hjälpmedelsteknik
på långsamma anslutningar också upplever det tillståndet och att det kapslade
aria-hidden="false" fortfarande inte gör någonting så länge det varar.
Den här kontrollen rapporterar inget trots att jag förväntar mig resultat
ARIA-tester kan stängas av per webbplats. Kontrollera webbplatsens avancerade inställningar.