Nestet aria-hidden
Silktide kontrollerer om innhold som er merket som synlig for , finnes inne i en beholder som er merket som skjult for den. Skjuling vinner: Den indre merkingen har ingen effekt, og innholdet forblir skjult.
<!-- Problem: Avsnittet forblir skjult til tross for aria-hidden="false" -->
<div aria-hidden="true">
<p aria-hidden="false">Viktig innhold</p>
</div>
Hvorfor dette er viktig
Når et element har aria-hidden="true", fjernes alt innholdet i det fra . -standarden gir ingen mulighet for at et etterkommerelement kan velge å bli synlig igjen – aria-hidden="false" inne i en skjult beholder gjør ganske enkelt ingenting. Forfattere som bruker dette mønsteret, tror at de har gjort det indre innholdet synlig igjen. Resultatet blir derfor innhold som seende brukere kan se, men som -brukere ikke kan nå, uten at noen er klar over forskjellen.
Slik løser du det
- Omstrukturer markeringen slik at innholdet som skal vises, ikke ligger inne i den skjulte beholderen – flytt det ut slik at det blir et søskenelement i stedet for et etterkommerelement.
- Hvis alt inne i beholderen faktisk skal være tilgjengelig, fjerner du
aria-hidden="true"fra overordnet element. - Stol aldri på
aria-hidden="false"for å oppheve en overordnet skjult tilstand. Når problemet er løst, kan det indre attributtet vanligvis også slettes.
Slik tester Silktide dette
- Finn alle elementer på siden med
aria-hidden="false". - Gå oppover gjennom de overordnede elementene og se etter et element med
aria-hidden="true". - Rapporter hvert element der
aria-hidden="false"er fanget inne i et skjult overordnet element.
Feilsøking
Et skript veksler mellom den overordnedes aria-hidden-verdier
Silktide tester siden mens den lastes inn. Hvis den skjulte tilstanden bare eksisterer et øyeblikk før et skript fjerner den, gjenspeiler funnet denne opprinnelige tilstanden – men vær oppmerksom på at brukere av hjelpemiddelteknologi med treg forbindelse også opplever denne tilstanden, og at det nestede aria-hidden="false" fortsatt ikke gjør noe så lenge den varer.
Denne kontrollen rapporterer ingenting selv om jeg forventer funn
ARIA-testing kan slås av for hvert nettsted. Se avanserte innstillinger for nettstedet.