Landmärke
Se även: ARIA landmark, landmark region
En region på en sida identifierad av ett HTML5-element eller en ARIA-roll som skärmläsaranvändare kan navigera direkt till. Landmärken (banner, navigation, main, complementary, contentinfo) bildar sidans strukturella skelett.
Landmärken är regioner på sidnivå som skärmläsaranvändare kan hoppa mellan direkt via dedikerade tangentbordsgenvägar. De är sidans motsvarighet till kapitelindelningar i en bok: en seende användare får strukturen från visuella ledtrådar (den synliga sidhuvudet högst upp, sidofältet till höger, sidfoten längst ned); en skärmläsaranvändare får strukturen från landmärken.
Standardlandmärkena
Var och en av dessa är både ett HTML5-element och en ARIA-roll. Använd HTML5-elementet i möjligaste mån; ARIA-rollen finns för fall då du inte kan använda det nativa elementet.
| Region | HTML5-element | ARIA-roll |
|---|---|---|
| Sidbanner (logotyp, primär nav) | <header> (sidans topp) | role="banner" |
| Huvudnavigering | <nav> | role="navigation" |
| Primärt innehåll | <main> | role="main" |
| Kompletterande innehåll (sidofält) | <aside> | role="complementary" |
| Sidfot (upphovsrätt, sekundära länkar) | <footer> (sidans botten) | role="contentinfo" |
| Sökning | <search> (HTML5) eller <form role="search"> | role="search" |
| Generisk region som behöver identifiering | — | role="region" (med etikett) |
| Formulär (om inte sökning) | <form> | role="form" |
Observera att <header> och <footer> mappas till banner och contentinfo bara när de är direkta barn till <body>. En <header> inuti ett <article> är bara ett artikelsidhuvud — det blir inte ett banner-landmärke.
Hur skärmläsaranvändare använder dem
Varje större skärmläsare har ett navigeringsläge enbart för landmärken:
- JAWS:
Rbläddrar igenom landmärken;Shift+Rbläddrar bakåt;Insert+F7öppnar en lista med alla landmärken. - NVDA:
Dbläddrar igenom landmärken;Shift+Dbakåt;Insert+F7öppnar elementlistan. - VoiceOver (macOS): VO+U öppnar rotorn; rotera till “Landmärken”; navigera med piltangenter.
- VoiceOver (iOS): rotera med två fingrar till “Landmärken” i rotorn; svep upp/ned igenom dem.
- TalkBack (Android): svep upp sedan höger för att öppna läskontrollmenyn; välj “Landmärken”-läge; svep höger igenom dem.
En sida med bra landmärken ger skärmläsaranvändaren en innehållsförteckning med ett knapptryck.
Vanliga landmärkesmisstag
- Ingen
<main>. Utan ett main-landmärke måste skärmläsaranvändare tabba förbi sidhuvudet vid varje sidladdning. Varje sida bör ha exakt en<main>. - Flera omärkta
<nav>-element. En sida med både en toppnavigering och en sidofältsnavigering, vardera som<nav>, tvingar skärmläsaranvändaren att välja mellan två identiska “navigering”-poster. Märk varje medaria-label:<nav aria-label="Primär">,<nav aria-label="Sidinnehåll">. role="banner"på ett inre element. En<header>inuti<main>eller<article>är inte en banner; det är ett artikelsidhuvud. Lägg inte tillrole="banner"på det.- Duplicerade landmärken. Två
<main>-element på en sida bryter mot regeln “landmark-no-duplicate-main”. axe och Lighthouse fångar båda detta. - Region utan etikett.
role="region"kräveraria-labelelleraria-labelledby. Annars ignorerar skärmläsare det.
Hur man granskar landmärken
Öppna sidan i valfri modern skärmläsare, tryck på genvägen för landmärkeslistan och verifiera:
- Det finns exakt en banner, en main, en contentinfo.
- Varje
<nav>har ett distinkt tillgängligt namn. - Landmärkesstrukturen matchar den visuella sidstrukturen.
En landmärkeslista som lyder “banner, navigation, navigation, main, complementary, contentinfo” utan ytterligare etiketter innebär att användaren inte kan skilja de två navigationerna åt. Åtgärda det.