ARIA Authoring Practices Guide
Se även: APG, ARIA APG, Authoring Practices Guide
W3C:s mönsterbibliotek för tillgängliga anpassade widgets. APG är den praktiska handledningen till ARIA-specifikationen — den visar hur ARIA används korrekt.
ARIA-specifikationen definierar ett vokabulär av roller, tillstånd och egenskaper. ARIA Authoring Practices Guide förklarar hur man faktiskt använder dem: vilka tangentbordsinteraktioner varje mönster kräver, hur fokus rör sig genom en widget, vad som ska annonseras när tillståndet ändras och hur DOM:en bör se ut.
Vad APG innehåller
APG dokumenterar den kanoniska implementeringen av varje widget-mönster som ARIA-specifikationen skrevs för att stödja:
- Comboboxar (autocompletemönstret med knepigt tangentbordsbeteende som nästan alla implementerar fel).
- Dialoger — modala och icke-modala, med fullständig fokusfällning och återställning av fokus vid stängning.
- Disclosure-widgets (det enkla visa/dölj-mönstret).
- Menyer och menyrader — de som behöver pilnavigering, inte bara tab.
- Flikar — tab/tabpanel-par med pilnavigering och semantik för automatisk respektive manuell aktivering.
- Trädvyer — hierarkisk navigering i filträd-stil.
- Listboxar — enkelt och flerval.
- Snurrknappar, reglage, karuseller och ett dussintal till.
Varje mönstrsida har tre delar: ett fungerande live-exempel,
tangentbordsinteraktionstabellen och de exakta ARIA-attributen. Det
finns även landmärkesmönster — vägledning om <header>, <nav>,
<main> och ARIA-rollerna som mappar till dem — samt ett avsnitt om
antimönster som förklarar vad man inte ska göra.
När man bör använda det
APG är mest användbar när du är på väg att bygga en widget utan ett inbyggt HTML-element. Innan du skriver en enda rad kod: kontrollera om APG har mönstret. Nästan alltid gäller:
- Tangentbordsinteraktionerna du behöver implementera är redan specificerade.
- DOM-strukturen är redan dokumenterad.
- ARIA-attributen är redan utarbetade.
Att hoppa över detta steg är hur team levererar “tillgängliga” widgets som förvirrar skärmläsare på sätt som inget automatiserat verktyg fångar. APG är skillnaden mellan en combobox som fungerar för alla och en som kompilerar men brister för skärmläsaranvändare.
Vad APG uttryckligen inte är
APG är inte en normativ specifikation. De normativa dokumenten är ARIA-specifikationen och WCAG. APG är vägledning: att implementera en widget exakt som APG visar är den rekommenderade vägen, men inte den enda godkända. Det sagt: att avvika från APG utan dokumenterat skäl signalerar att du kanske inte förstår mönstret fullt ut.
APG ersätter heller inte inbyggd HTML. Om <select> fungerar för
din rullgardinsmeny, använd <select> — gå inte till APG:s
combobox-mönster bara för att det låter mer avancerat.