Metodologia e ambito
Qui spieghiamo onestamente cosa scansiona NormHarbor, come lo fa e cosa resta escluso. Il nostro obiettivo è la fiducia, non promesse esagerate.
RegoleRegole WCAG scansionate
| Regola | Titolo | Cosa viene verificato |
|---|---|---|
| WCAG 1.1.1 (A) | Immagini senza testo alternativo | Ogni tag <img> ha l'attributo alt (escluse le immagini decorative contrassegnate con role="presentation"/aria-hidden). |
| WCAG 3.1.1 (A) | Lingua della pagina (html lang) non definita | Il tag <html> ha un attributo lang valido. |
| WCAG 2.4.2 (A) | Titolo della pagina (<title>) mancante o vuoto | Il tag <title> è presente e non vuoto. |
| WCAG 1.3.1 (A) | Campi del modulo senza etichetta (label) | Ogni input/select/textarea è associato a un <label for>, aria-label, aria-labelledby o a un <label> che lo racchiude. |
| WCAG 2.4.4 (A) | Link senza testo | Ogni <a href> ha un nome accessibile: testo visibile, aria-label o un'immagine interna con alt. |
| WCAG 4.1.2 (A) | Pulsanti senza nome accessibile | Ogni <button> ha un nome accessibile (testo o aria-label). |
| WCAG 4.1.2 (A) | iframe senza title | Ogni <iframe> non nascosto ha l'attributo title. |
| WCAG 1.4.4 (AA) | Zoom bloccato | Il meta tag viewport ha la restrizione user-scalable=no o maximum-scale<2. |
| WCAG 4.1.1 (A) | Valori id duplicati | Lo stesso valore id è usato su più elementi nella pagina. |
| WCAG 2.4.3 (A) | Tabindex positivo (ordine di focus alterato) | Presenza di elementi con attributo tabindex maggiore di 0 (altera l'ordine di focus del DOM). |
| WCAG 1.3.1 (A) | Nessun titolo h1 nella pagina | È presente almeno un <h1> nella pagina (se esiste una gerarchia di titoli). |
| WCAG 1.3.1 (A) | Livello di titolo saltato (es. h2→h4) | I livelli di titolo (h1–h6) procedono in ordine, senza livelli saltati. |
| WCAG 1.2.2 (A) | Sottotitoli (track) mancanti per video/audio | È presente <track kind="captions"> all'interno di <video>/<audio>. |
| WCAG 1.4.3 (AA) | Contrasto colore insufficiente | Rapporto di contrasto testo/sfondo ≥ 4.5:1 (≥ 3:1 per testo grande). Rilevamento parziale: solo stili inline (color + background-color); i colori definiti tramite classi CSS richiedono un audit manuale. |
| WCAG 1.3.1 (A) | Riferimento ARIA non valido | aria-labelledby/aria-describedby puntano a un id esistente nella pagina. |
| WCAG 4.1.2 (A) | Elemento nascosto (aria-hidden) ma focalizzabile | Nessun elemento focalizzabile (link, pulsante, input, tabindex) è marcato aria-hidden="true". |
| WCAG 1.3.1 (A) | Tabella di dati senza intestazioni (<th>) | Le tabelle di dati (con <td>) hanno almeno un'intestazione <th>; le tabelle role="presentation" sono escluse. |
| WCAG 2.4.4 (A) | Testo del link generico/non descrittivo | I link non usano testi generici come «clicca qui», «leggi di più», «qui» che non descrivono la destinazione. |
| WCAG 1.4.2 (A) | Contenuto multimediale con riproduzione automatica | Audio/video non partono in autoplay senza controlli (audio) o senza muted (video). |
Metodo di audit
NormHarbor recupera l'URL di destinazione lato server e analizza staticamente il codice HTML applicando le regole sopra elencate. Questo restituisce un risultato in pochi secondi, senza aprire un browser né eseguire JavaScript.
Fuori ambito — ciò che non misuriamo intenzionalmente
- L'analisi statica non copre completamente i contenuti generati via JavaScript; si consiglia un audit manuale. Il contenuto/gli elementi non visibili nell'HTML statico, aggiunti al DOM solo tramite JS lato client, non vengono scansionati.
- Contrasto colore (1.4.3) — richiede il rendering reale e il CSS calcolato, non misurabile dall'HTML statico. (Vedi il nostro strumento dedicato per il contrasto colore.)
- Keyboard trap e visibilità del focus (2.1.2 / 2.4.7) — richiedono interazione reale/un browser.
- Stati ARIA dinamici (4.1.3) — stati come aria-live, aria-expanded che cambiano via JS richiedono il rendering.
Dichiarazione onesta sull'ambito
L'audit automatico non sostituisce i test manuali. Secondo i dati di settore, gli strumenti automatici rilevano circa il 30-40% dei problemi WCAG; il resto (contesto, significato, esperienza reale con tastiera/screen reader) richiede una revisione umana.
Usa NormHarbor per la diagnosi iniziale e il monitoraggio continuo delle regressioni; prima di rilasciare una dichiarazione di conformità legale, fai sempre eseguire un audit manuale/da un esperto. Non costituisce consulenza legale.
← Home · Strumenti · Scansione vs audit · Overlay vs correzione codice · Guida UE (EAA)