Closed AlessandroVecchi closed 2 months ago
Ciao, rendere tutte le icone di Bootstrap Italia decorative non credo sia una soluzione, dipende in effetti dal contesto d'uso dell'icona specifica se è decorativa o meno.
FYI c'è un thread aperto sullo stesso argomento sullo Slack Developers (canale #chat). Come ho già scritto lì: IMHO da una parte non è facilissimo risponderti nello specifico, senza conoscere lo scopo ad esempio di quell'immagine SVG nel suo contesto, dall'altra MAUVE++ testa le tecniche, cosa che sì può avere dei limiti, perché i criteri (che sono quelli richiesti dalla norma) si possono rispettare anche in altri modi.
Lascio a @cfabry e @astagi altre considerazioni.
Ciao @Fupete
Nell'esempio in questione l'SVG serve a creare la freccia del componente dropdown: https://italia.github.io/bootstrap-italia/docs/componenti/dropdown/
In generale, in tutti i casi in cui l'SVG sia usata all'interno del contesto di un pulsante (a
o button
) che ha già una sua azione dichiarata sotto forma testuale sarebbe supefluo descrivere l'svg anche perché il suo scopo è puramente visivo (c'è aria-expanded che serve già a determinare lo stato del dropdown per gli screen readers).
È da considerarsi un errore reale oppure è un limite del validatore che non è in grado di riconosce il ruolo dell'SVG all'interno del contesto? Può essere utile definire un
aria-hidden="true"
su tutte le SVG?
In effetti, per le frecce (tipo 'Torna su') io l'ho avevo aggiunto per non avere errore sul validatore mauve.
<svg aria-hidden="true" class="icon icon-light">
<use href="#it-arrow-up"></use>
</svg>
Versione di Bootstrap Italia
2.7.x
Comportamento atteso
Validazione dell'accessibilità.
Comportamento attuale
Il validatore Mauve++ segnala su tutte le SVG usate da BI questo errore
SC 1.1.1 - Tech ARIA6 [WCAG 2.1 (A)]Using aria-label to provide labels for objectsopen_in_new es.
A prescindere dal fatto che la label legata all'elemento (che sia un button, un anchor o un dropdown) sia precisata in un altro tag (a, span, ecc.)
Possibili soluzioni
È da considerarsi un errore reale oppure è un limite del validatore che non è in grado di riconosce il ruolo dell'SVG all'interno del contesto? Può essere utile definire un
aria-hidden="true"
su tutte le SVG?