accesskey-attributt
Silktide finner elementer som deklarerer en accesskey, en gammel måte å gi et element sin egen tastatursnarvei på. Disse snarveiene er alltid aktive og kan ikke slås av av besøkende, noe som skaper flere problemer enn de løser.
Hvorfor dette er viktig
accesskey-attributtet i oppretter en tastatursnarvei med
ett tegn som utløses hver gang tasten trykkes.
Dette kolliderer med måten mange allerede bruker tastaturet på:
brukere av og nettlesere reserverer
overlappende tastekombinasjoner, så en accesskey kan i det stille overstyre en snarvei
noen er avhengige av – og hvilken tastekombinasjon som utløser den, varierer
mellom nettlesere og operativsystemer. Personer som skriver med talegjenkjenning
eller har nedsatt fingerferdighet, kan også utløse snarveien ved et uhell.
Suksesskriterium 2.1.4 i (Tastatursnarveier med tegn,
nivå A) krever at snarveier med ett tegn kan slås av, tilordnes på nytt eller
bare utløses mens elementet har
. En accesskey oppfyller
ingen av disse kravene: den er alltid på, og bare nettstedet kan endre den.
Slik løser du det
- Fjern
accesskey-attributtet. Det gir sjelden reell verdi, og fjerningen endrer ingenting som er synlig på siden.
<!-- Alltid aktiv snarvei som kan komme i konflikt med brukerens egen -->
<a href="/search" accesskey="s">Søk</a>
<!-- Rettet: en vanlig lenke som kan nås med Tab, som alt annet -->
<a href="/search">Søk</a>
- Hvis du faktisk trenger tastatursnarveier, implementerer du dem slik at besøkende kan deaktivere eller tilordne dem på nytt, eller slik at de bare gjelder mens den relevante kontrollen har fokus.
Slik tester Silktide dette
- Finn hvert element i sidens HTML som deklarerer et
accesskey-attributt med en verdi som ikke er tom. - Rapporter hvert av dem. Tomme verdier (
accesskey="") ignoreres, siden enkelte komponentbiblioteker gjengir attributtet som en tom operasjon, og det ikke oppretter noen snarvei.
Feilsøking
Vi la til accesskeys for å forbedre tilgjengeligheten
Det var tidligere anbefalt praksis, men erfaring viste at konfliktene med snarveier i nettlesere og oppveier fordelene, og moderne retningslinjer anbefaler å unngå attributtet. Godt strukturerte sider med gode overskrifter og landemerker er bedre for tastaturbrukere.
Snarveier implementert i JavaScript
Denne kontrollen dekker bare accesskey-attributtet. Snarveier som er
implementert i skript, dekkes av
Tastatursnarveier med tegn; de to kontrollene
utfyller hverandre, og begge kan vises på samme side.