Lenker for skjermlesere
Silktide finner lenkeelementer som er feil utformet på måter som gjør at de ikke fungerer for – lenker uten lesbar tekst, lenker uten mål og løse, tomme lenketagger som er igjen på siden.
For at en lenke skal fungere med hjelpemiddelteknologi, trenger den både et mål (et href-attributt) og noe lesbart inni seg:
<!-- Fungerer: mål og lesbar tekst -->
<a href="/about">Om oss</a>
<!-- Fungerer: en bildelenke med alternativ tekst -->
<a href="/apple"><img src="apple.png" alt="Apple"></a>
Hvorfor dette er viktig
En leser opp hver lenke basert på teksten. En lenke med et mål, men uten tekst, leses bare opp som «lenke» – brukeren kan aktivere den, men har ingen anelse om hvor den fører. En lenke med tekst, men uten mål, ser klikkbar ut, men fører ingen steder. Begge mønstrene bryter den grunnleggende funksjonen som gjør det mulig for personer som bruker hjelpemiddelteknologi, å navigere på en side ved hjelp av lenkene.
Slik løser du det
- For en lenke med et mål, men uten lesbar tekst: legg til tekst inni lenken, eller hvis den bare inneholder et bilde.
- For en lenke med tekst, men uten mål: legg til det manglende
href-attributtet. Hvis elementet egentlig er et mål som andre lenker skal hoppe til, flytter du i stedetid-attributtet til et element som ikke er en lenke:
<!-- Eldre målanter, frarådes i HTML5 -->
<a name="example"></a>
<!-- Anbefalt: en id på et vanlig element -->
<div id="example">...</div>
- For tomme
<a></a>-tagger uten attributter: fjern dem, siden de ikke har noen funksjon. De blir ofte liggende igjen etter redigering eller fra skript. - Hvis elementet egentlig er en knapp – det utløser en handling i stedet for å navigere – bruker du et
<button>-element eller legger tilrole="button"i den eksisterende taggen.
Slik tester Silktide dette
- Finn alle
<a>-elementer på siden og les teksten deres (inkludert alternativ tekst for bilder og tekst som legges til med CSS),href-attributtet og eventuelleid- ellername-attributter. - Marker tre problematiske mønstre:
- En lenke med et
href-attributt, men uten lesbar tekst. - Et element med tekst og en
idellername, men utenhref– et mål som utgir seg for å være en lenke, eller en lenke som mangler målet sitt. - Et helt tomt anker uten tekst,
href,idellername.
- En lenke med et
- To mønstre markeres med hensikt ikke:
<a>med tekst, men utenhref,idellername– HTML5 tillater dette som en «plassholderlenke», som ofte fylles ut senere av .- Tomme ankere med en
idellername, men utenhref– dette er eldre hoppmål, ikke lenker.