Indlejret aria-hidden
Silktide tjekker for indhold, der er markeret som synligt for , inde i et element, der er markeret som skjult for den. Skjult vinder: den indre markering har ingen effekt, og indholdet forbliver skjult.
<!-- Problem: afsnittet forbliver skjult på trods af aria-hidden="false" -->
<div aria-hidden="true">
<p aria-hidden="false">Vigtigt indhold</p>
</div>
Hvorfor det er vigtigt
Når et element har aria-hidden="true", fjernes alt indeni det
fra . Standarden
giver ingen mulighed for, at et underordnet element kan
vælge at blive inkluderet igen – aria-hidden="false" inde i et skjult element gør
simpelthen ingenting. Forfattere, der bruger dette mønster, tror, at de har gjort det indre
indhold synligt igen, så resultatet er indhold, som seende brugere kan se, men som
-brugere ikke kan nå, uden at
nogen er klar over forskellen.
Sådan retter du det
- Omstrukturér opmærkningen, så det indhold, der skal være synligt, ikke er inde i det skjulte element – flyt det ud, så det bliver et søskendeelement i stedet for et underordnet element.
- Hvis alt inde i elementet faktisk skal være tilgængeligt, skal du fjerne
aria-hidden="true"fra det overordnede element. - Stol aldrig på, at
aria-hidden="false"kan ophæve en overordnet elements skjulte tilstand; når rettelsen er foretaget, kan det indre attribut normalt også slettes.
Sådan tester Silktide dette
- Find hvert element på siden med
aria-hidden="false". - Gå op gennem dets overordnede elementer for at finde et element med
aria-hidden="true". - Rapportér hvert element, hvis
aria-hidden="false"er fanget inde i et skjult overordnet element.
Fejlfinding
Et script skifter det overordnede elements aria-hidden
Silktide tester siden, mens den indlæses. Hvis den skjulte tilstand kun findes
kortvarigt, før et script fjerner den, afspejler fundet denne oprindelige
tilstand – men bemærk, at brugere af hjælpeteknologi på langsomme forbindelser
også oplever denne tilstand, og det indlejrede aria-hidden="false" stadig ikke
gør noget, mens den varer.
Dette tjek rapporterer intet, selv om jeg forventer fund
ARIA-test kan slås fra pr. website. Tjek de avancerede indstillinger for websitet.