Normative

ARIA Authoring Practices Guide

Vedi anche: APG, ARIA APG, Authoring Practices Guide

La raccolta di pattern del W3C per widget personalizzati accessibili. L'APG è la guida pratica complementare alla specifica ARIA — mostra come usare ARIA correttamente.

La specifica ARIA definisce un vocabolario di ruoli, stati e proprietà. L’ ARIA Authoring Practices Guide spiega come usarli concretamente: quali interazioni da tastiera ogni pattern richiede, come si sposta il focus all’interno di un widget, cosa annunciare al cambio di stato, e come deve apparire il DOM.

Cosa contiene l’APG

L’APG documenta l’implementazione canonica di ogni pattern di widget che la specifica ARIA è stata progettata a supportare:

  • Combobox (il pattern di autocompletamento con un comportamento da tastiera complesso che quasi tutti implementano in modo errato).
  • Dialoghi — modali e non modali, con gestione completa del focus-trap e del ritorno del focus alla chiusura.
  • Widget di disclosure (il semplice pattern mostra/nascondi).
  • Menu e menu bar — quelli che richiedono la navigazione con i tasti freccia, non solo con il tasto Tab.
  • Tab — coppie tab/tabpanel con navigazione a freccia e semantica di attivazione automatica o manuale.
  • Treeview — navigazione gerarchica a struttura ad albero.
  • Listbox — selezione singola e multipla.
  • Spin button, slider, caroselli e molti altri.

Ogni pagina di pattern è composta da tre parti: un esempio funzionante dal vivo, la tabella delle interazioni da tastiera e gli attributi ARIA utilizzati in modo preciso. Sono presenti anche i pattern landmark — indicazioni su <header>, <nav>, <main> e i ruoli ARIA corrispondenti — e una sezione sugli anti-pattern che spiega cosa non fare.

Quando consultarla

L’APG è particolarmente utile quando si sta per costruire un widget privo di un elemento HTML nativo. Prima di scrivere una sola riga di codice, è opportuno verificare se l’APG contiene già il pattern. Quasi sempre:

  • Le interazioni da tastiera necessarie sono già specificate.
  • La struttura del DOM è già documentata.
  • Gli attributi ARIA sono già definiti.

Saltare questo passaggio è il motivo per cui i team distribuiscono widget «accessibili» che confondono gli screen reader in modi che nessuno strumento automatico riesce a rilevare. L’APG è la differenza tra una combobox che funziona per tutti e una che compila, ma non funziona per gli utenti di screen reader.

Cosa l’APG non è esplicitamente

L’APG non è una specifica normativa. I documenti normativi sono la specifica ARIA stessa e WCAG. L’APG è una guida: implementare un widget esattamente come mostrato dall’APG è il percorso raccomandato, ma non l’unico ammissibile. Detto questo, deviare dall’APG senza una ragione documentata è un segnale che il pattern potrebbe non essere stato compreso a fondo.

L’APG, inoltre, non sostituisce l’HTML nativo. Se <select> funziona per il proprio menu a tendina, è opportuno usare <select> — non è necessario ricorrere al pattern combobox dell’APG solo perché sembra più avanzato.