source: frontend/node_modules/axe-core/locales/it.json

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 12 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 64.6 KB
Line 
1{
2 "lang": "it",
3 "rules": {
4 "accesskeys": {
5 "description": "Assicurati che ogni valore dell'attributo accesskey sia univoco",
6 "help": "Il valore dell'attributo accesskey deve essere univoco"
7 },
8 "area-alt": {
9 "description": "Assicurati che gli elementi <area> delle mappe immagine abbiano un testo alternativo",
10 "help": "Gli elementi <area> attivi devono avere un testo alternativo"
11 },
12 "aria-allowed-attr": {
13 "description": "Assicurati che il ruolo di un elemento supporti i suoi attributi ARIA",
14 "help": "Gli elementi devono utilizzare solo gli attributi ARIA supportati"
15 },
16 "aria-allowed-role": {
17 "description": "Assicurati che il valore dell'attributo role sia appropriato per l'elemento",
18 "help": "Il ruolo ARIA deve essere appropriato per l'elemento"
19 },
20 "aria-braille-equivalent": {
21 "description": "Assicurati che aria-braillelabel e aria-brailleroledescription abbiano un equivalente non braille",
22 "help": "Gli attributi aria-braille devono avere un equivalente non braille"
23 },
24 "aria-command-name": {
25 "description": "Assicurati che ogni bottone, link e menuitem gestito con ARIA abbia un nome accessibile",
26 "help": "I controlli gestiti con ARIA devono avere un nome accessibile"
27 },
28 "aria-conditional-attr": {
29 "description": "Assicurati che gli attributi ARIA vengano utilizzati come descritto nella specifica del ruolo dell'elemento",
30 "help": "Gli attributi ARIA devono essere utilizzati come specificato per il ruolo dell'elemento"
31 },
32 "aria-deprecated-role": {
33 "description": "Assicurati che gli elementi non utilizzino ruoli obsoleti",
34 "help": "I ruoli ARIA obsoleti non devono essere utilizzati"
35 },
36 "aria-dialog-name": {
37 "description": "Assicurati che ogni nodo dialog e alertdialog ARIA abbia un nome accessibile",
38 "help": "I nodi dialog e alertdialog ARIA devono avere un nome accessibile"
39 },
40 "aria-hidden-body": {
41 "description": "Assicurati che aria-hidden=\"true\" non sia presente sull'elemento body del documento",
42 "help": "aria-hidden=\"true\" non deve essere presente sull'elemento body del documento"
43 },
44 "aria-hidden-focus": {
45 "description": "Assicurati che gli elementi nascosti con aria-hidden non possano nè ricevere focus, nè contengano elementi che possono ricevere focus",
46 "help": "L'elemento nascosto con aria-hidden non deve ricevere focus, nè può contenere elementi che ricevono focus"
47 },
48 "aria-input-field-name": {
49 "description": "Assicurati che ogni input gestito con ARIA abbia un nome accessibile",
50 "help": "Gli input gestiti con ARIA devono avere un nome accessibile"
51 },
52 "aria-meter-name": {
53 "description": "Assicurati che ogni nodo meter gestito con ARIA abbia un nome accessibile",
54 "help": "I nodi meter gestiti con ARIA devono avere un nome accessibile"
55 },
56 "aria-progressbar-name": {
57 "description": "Assicurati che ogni nodo progessbar gestito con ARIA abbia un nome accessibile",
58 "help": "I nodi progressbar gestiti con ARIA devono avere un nome accessibile"
59 },
60 "aria-prohibited-attr": {
61 "description": "Assicurati che gli attributi ARIA non siano proibiti per il ruolo di un elemento",
62 "help": "Gli elementi devono utilizzare solo gli attributi ARIA consentiti"
63 },
64 "aria-required-attr": {
65 "description": "Assicurati che gli elementi con ruoli ARIA abbiano tutti gli attributi ARIA obbligatori",
66 "help": "Gli attributi ARIA obbligatori devono essere forniti"
67 },
68 "aria-required-children": {
69 "description": "Assicurati che gli elementi con un ruolo ARIA che richiede ruoli figlio contengano questi ultimi",
70 "help": "Alcuni ruoli ARIA devono contenere ruoli figlio specifici"
71 },
72 "aria-required-parent": {
73 "description": "Assicurati che gli elementi con un ruolo ARIA che richiede ruoli genitore siano contenuti da questi ultimi",
74 "help": "Alcuni ruoli ARIA devono essere contenuti da ruoli genitore specifici"
75 },
76 "aria-roledescription": {
77 "description": "Assicurati che aria-roledescription venga utilizzato solo su elementi con un ruolo implicito o esplicito",
78 "help": "aria-roledescription deve essere presente solo su elementi con un ruolo semantico"
79 },
80 "aria-roles": {
81 "description": "Assicurati che tutti gli elementi con un attributo role utilizzino un valore valido",
82 "help": "I ruoli ARIA utilizzati devono essere conformi ai valori validi"
83 },
84 "aria-text": {
85 "description": "Assicurati che role=\"text\" venga utilizzato su elementi i cui discendenti non ricevono focus",
86 "help": "\"role=text\" non deve avere discendenti che possono ricevere focus"
87 },
88 "aria-toggle-field-name": {
89 "description": "Assicurati che ogni bottone toggle gestito con aria ARIA abbia un nome accessibile",
90 "help": "I bottoni toggle gestiti con ARIA devono avere un nome accessibile"
91 },
92 "aria-tooltip-name": {
93 "description": "Assicurati che ogni nodo tooltip gestito con ARIA abbia un nome accessibile",
94 "help": "I nodi tooltip gestiti con ARIA devono avere un nome accessibile"
95 },
96 "aria-treeitem-name": {
97 "description": "Assicurati che ogni nodo treeitem gestito con ARIA abbia un nome accessibile",
98 "help": "I nodi treeitem gestiti con ARIA devono avere un nome accessibile"
99 },
100 "aria-valid-attr-value": {
101 "description": "Assicurati che tutti gli attributi ARIA abbiano valori validi",
102 "help": "Gli attributi ARIA devono essere conformi ai valori validi"
103 },
104 "aria-valid-attr": {
105 "description": "Assicurati che gli attributi che iniziano con aria- siano attributi ARIA validi",
106 "help": "Gli attributi ARIA devono essere conformi ai nomi validi"
107 },
108 "audio-caption": {
109 "description": "Assicurati che gli elementi <audio> abbiano didascalie",
110 "help": "Gli elementi <audio> devono avere una didascalia"
111 },
112 "autocomplete-valid": {
113 "description": "Assicurati che l'attributo autocomplete sia corretto e adatto al campo specifico",
114 "help": "L'attributo autocomplete deve essere utilizzato correttamente"
115 },
116 "avoid-inline-spacing": {
117 "description": "Assicurati che la spaziatura del testo impostata tramite attributi di stile possa essere regolata con fogli di stile personalizzati",
118 "help": "La spaziatura del testo inline deve poter essere regolata con fogli di stile personalizzati"
119 },
120 "blink": {
121 "description": "Assicurati che non vengano utilizzati elementi <blink>",
122 "help": "Gli elementi <blink> sono deprecati e non devono essere utilizzati"
123 },
124 "button-name": {
125 "description": "Assicurati che i pulsanti abbiano un testo distinguibile",
126 "help": "I pulsanti devono avere un testo distinguibile"
127 },
128 "bypass": {
129 "description": "Assicurati che ogni pagina abbia almeno un meccanismo per consentire all'utente di ignorare la navigazione e passare direttamente al contenuto",
130 "help": "La pagina deve avere un modo per ignorare i blocchi ripetuti"
131 },
132 "color-contrast-enhanced": {
133 "description": "Assicurati che il contrasto tra i colori in primo piano e di sfondo soddisfi le soglie di rapporto di contrasto avanzato WCAG 2 AAA",
134 "help": "Gli elementi devono soddisfare le soglie di rapporto di contrasto di colore avanzato"
135 },
136 "color-contrast": {
137 "description": "Assicurati che il contrasto tra i colori in primo piano e di sfondo soddisfi le soglie minime del rapporto di contrasto WCAG 2 AA",
138 "help": "Gli elementi devono soddisfare le soglie minime del rapporto di contrasto di colore"
139 },
140 "css-orientation-lock": {
141 "description": "Assicurati che il contenuto non sia bloccato in un'orientamento di visualizzazione specifico e che sia operabile in tutti gli orientamenti di visualizzazione",
142 "help": "Le Media queries CSS non devono bloccare l'orientamento di visualizzazione"
143 },
144 "definition-list": {
145 "description": "Assicurati che gli elementi <dl> siano strutturati correttamente",
146 "help": "Gli elementi <dl> devono contenere direttamente solo gruppi <dt> e <dd> ordinati correttamente, <script>, <template> o elementi <div>"
147 },
148 "dlitem": {
149 "description": "Assicurati che gli elementi <dt> e <dd> siano contenuti in un <dl>",
150 "help": "Gli elementi <dt> e <dd> devono essere contenuti in un <dl>"
151 },
152 "document-title": {
153 "description": "Assicurati che ogni documento HTML contenga un elemento <title> non vuoto",
154 "help": "I documenti devono avere un elemento <title> per aiutare nella navigazione"
155 },
156 "duplicate-id-active": {
157 "description": "Assicurati che ogni valore dell'attributo id degli elementi attivi sia univoco",
158 "help": "Gli ID degli elementi attivi devono essere univoci"
159 },
160 "duplicate-id-aria": {
161 "description": "Assicurati che ogni valore dell'attributo id utilizzato in ARIA e nelle etichette sia univoco",
162 "help": "Gli ID utilizzati in ARIA e nelle etichette devono essere univoci"
163 },
164 "duplicate-id": {
165 "description": "Assicurati che ogni valore dell'attributo id sia univoco",
166 "help": "Il valore dell'attributo id deve essere univoco"
167 },
168 "empty-heading": {
169 "description": "Assicurati che le intestazioni abbiano un testo distinguibile",
170 "help": "Le intestazioni non devono essere vuote"
171 },
172 "empty-table-header": {
173 "description": "Assicurati che le intestazioni di tabella abbiano un testo distinguibile",
174 "help": "Il testo dell'intestazione di tabella non deve essere vuoto"
175 },
176 "focus-order-semantics": {
177 "description": "Assicurati che gli elementi presenti nell'ordine di focus abbiano un ruolo appropriato per il contenuto interattivo",
178 "help": "Gli elementi presenti nell'ordine di focus devono avere un ruolo appropriato"
179 },
180 "form-field-multiple-labels": {
181 "description": "Assicurati che il campo non abbia elementi label multipli associati",
182 "help": "Il campo deve avere un solo elemento label associato"
183 },
184 "frame-focusable-content": {
185 "description": "Assicurati che gli elementi <frame> e <iframe> con contenuto che può ricevere focus non abbiano tabindex=-1",
186 "help": "I frames con contenuto che può ricecere focus non devono avere tabindex=-1"
187 },
188 "frame-tested": {
189 "description": "Assicurati che gli elementi <iframe> e <frame> contengano lo script axe-core",
190 "help": "I frames devono essere testate con axe-core"
191 },
192 "frame-title-unique": {
193 "description": "Assicurati che gli elementi <iframe> e <frame> contengano un attributo title univoco",
194 "help": "I frames devono avere un attributo title univoco"
195 },
196 "frame-title": {
197 "description": "Assicurati che gli elementi <iframe> e <frame> abbiano un nome accessibile",
198 "help": "I frames devono avere un nome accessibile"
199 },
200 "heading-order": {
201 "description": "Assicurati che l'ordine delle intestazioni sia semanticamente corretto",
202 "help": "I livelli delle intestazioni possono aumentare solo di uno"
203 },
204 "hidden-content": {
205 "description": "Informa gli utenti sul contenuto nascosto",
206 "help": "Il contenuto nascosto nella pagina deve essere analizzato"
207 },
208 "html-has-lang": {
209 "description": "Assicurati che ogni documento HTML abbia un attributo lang",
210 "help": "L'elemento <html> deve avere un attributo lang"
211 },
212 "html-lang-valid": {
213 "description": "Assicurati che l'attributo lang dell'elemento <html> abbia un valore valido",
214 "help": "L'attributo lang dell'elemento <html> deve avere un valore valido"
215 },
216 "html-xml-lang-mismatch": {
217 "description": "Assicurati che gli elementi HTML con entrambi gli attributi lang e xml:lang siano coerenti con la lingua di base della pagina",
218 "help": "Gli elementi con attributi lang e xml:lang devono avere la stessa lingua di base"
219 },
220 "identical-links-same-purpose": {
221 "description": "Assicurati che i collegamenti con lo stesso nome accessibile abbiano uno scopo simile",
222 "help": "I collegamenti con lo stesso nome devono avere uno scopo simile"
223 },
224 "image-alt": {
225 "description": "Assicurati che gli elementi <img> abbiano un testo alternativo o un ruolo none o presentation",
226 "help": "Le immagini devono avere un testo alternativo"
227 },
228 "image-redundant-alt": {
229 "description": "Assicurati che l'alternativa testuale delle immagini non venga ripetuta come testo",
230 "help": "Il testo alternativo delle immagini non deve essere ripetuto come testo"
231 },
232 "input-button-name": {
233 "description": "Assicurati che i pulsanti di input abbiano un testo distinguibile",
234 "help": "I pulsanti di input devono avere un testo distinguibile"
235 },
236 "input-image-alt": {
237 "description": "Assicurati che gli elementi <input type=\"image\"> abbiano un testo alternativo",
238 "help": "I pulsanti immagine devono avere un testo alternativo"
239 },
240 "label-content-name-mismatch": {
241 "description": "Assicurati che gli elementi etichettati tramite il loro contenuto abbiano il loro testo visibile come parte del loro nome accessibile",
242 "help": "Gli elementi devono avere il loro testo visibile come parte del loro nome accessibile"
243 },
244 "label-title-only": {
245 "description": "Assicurati che ogni elemento del modulo abbia un'etichetta visibile e non sia etichettato esclusivamente utilizzando etichette nascoste, o gli attributi title o aria-describedby",
246 "help": "Gli elementi del modulo devono avere un'etichetta visibile"
247 },
248 "label": {
249 "description": "Assicurati che ogni elemento del modulo abbia un'etichetta",
250 "help": "Gli elementi del modulo devono avere etichette"
251 },
252 "landmark-banner-is-top-level": {
253 "description": "Assicurati che il landmark banner sia a livello superiore",
254 "help": "Il landmark banner non deve essere contenuto in un altro landmark"
255 },
256 "landmark-complementary-is-top-level": {
257 "description": "Assicurati che il landmark complementary o l'elemento aside sia a livello superiore",
258 "help": "L'elemento aside non deve essere contenuto in un altro landmark"
259 },
260 "landmark-contentinfo-is-top-level": {
261 "description": "Assicurati che il landmark contentinfo sia a livello superiore",
262 "help": "Il landmark contentinfo non deve essere contenuto in un altro landmark"
263 },
264 "landmark-main-is-top-level": {
265 "description": "Assicurati che il landmark main sia a livello superiore",
266 "help": "Il landmark main non deve essere contenuto in un altro landmark"
267 },
268 "landmark-no-duplicate-banner": {
269 "description": "Assicurati che il documento abbia al massimo un landmark banner",
270 "help": "Il documento non deve avere più di un landmark banner"
271 },
272 "landmark-no-duplicate-contentinfo": {
273 "description": "Assicurati che il documento abbia al massimo un landmark contentinfo",
274 "help": "Il documento non deve avere più di un landmark contentinfo"
275 },
276 "landmark-no-duplicate-main": {
277 "description": "Assicurati che il documento abbia al massimo un landmark main",
278 "help": "Il documento non deve avere più di un landmark main"
279 },
280 "landmark-one-main": {
281 "description": "Assicurati che il documento abbia un landmark main",
282 "help": "Il documento deve avere un landmark main"
283 },
284 "landmark-unique": {
285 "help": "Assicurati che i landmark siano univoci",
286 "description": "I landmark devono avere un ruolo univoco o una combinazione univoca di ruolo/etichetta/titolo (come ad esempio un nome accessibile univoco)"
287 },
288 "link-in-text-block": {
289 "description": "Assicurati che i collegamenti siano distinguibili dal testo circostante in un modo che non si basa sul colore",
290 "help": "I collegamenti devono essere distinguibili senza fare affidamento sul colore"
291 },
292 "link-name": {
293 "description": "Assicurati che i collegamenti abbiano un testo distinguibile",
294 "help": "I collegamenti devono avere un testo distinguibile"
295 },
296 "list": {
297 "description": "Assicurati che le liste siano strutturate correttamente",
298 "help": "<ul> e <ol> devono contenere direttamente solo elementi <li>, <script> o <template>"
299 },
300 "listitem": {
301 "description": "Assicurati che gli elementi <li> siano utilizzati semanticamente",
302 "help": "Gli elementi <li> devono essere contenuti in un <ul> o <ol>"
303 },
304 "marquee": {
305 "description": "Assicurati che gli elementi <marquee> non siano utilizzati",
306 "help": "Gli elementi <marquee> sono deprecati e non devono essere utilizzati"
307 },
308 "meta-refresh-no-exceptions": {
309 "description": "Assicurati che <meta http-equiv=\"refresh\"> non venga utilizzato per il refresh ritardato",
310 "help": "Il refresh ritardato non deve essere utilizzato"
311 },
312 "meta-refresh": {
313 "description": "Assicurati che <meta http-equiv=\"refresh\"> non venga utilizzato per il refresh ritardato",
314 "help": "Il refresh ritardato al di sotto delle 20 ore non deve essere utilizzato"
315 },
316 "meta-viewport-large": {
317 "description": "Assicurati che <meta name=\"viewport\"> possa scalare una quantità significativa",
318 "help": "Gli utenti devono essere in grado di ingrandire e scalare il testo fino al 500%"
319 },
320 "meta-viewport": {
321 "description": "Assicurati che <meta name=\"viewport\"> non disabiliti il ridimensionamento e lo zoom del testo",
322 "help": "Lo zoom e il ridimensionamento non devono essere disabilitati"
323 },
324 "nested-interactive": {
325 "description": "Assicurati che i controlli interattivi non siano annidati, poiché non vengono sempre annunciati dagli screen reader o possono causare problemi di focus per le tecnologie assistive",
326 "help": "I controlli interattivi non devono essere annidati"
327 },
328 "no-autoplay-audio": {
329 "description": "Assicurati che gli elementi <video> o <audio> non riproducano automaticamente l'audio per più di 3 secondi senza un meccanismo di controllo per arrestare o disattivare l'audio",
330 "help": "Gli elementi <video> o <audio> non devono essere riprodotti automaticamente"
331 },
332 "object-alt": {
333 "description": "Assicurati che gli elementi <object> abbiano un testo alternativo",
334 "help": "Gli elementi <object> devono avere un testo alternativo"
335 },
336 "p-as-heading": {
337 "description": "Assicurati che il grassetto, il corsivo e le dimensioni del font non vengano utilizzati per rappresentare elementi <p> come intestazione",
338 "help": "Gli elementi <p> personalizzati non devono essere utilizzati come intestazioni"
339 },
340 "page-has-heading-one": {
341 "description": "Assicurati che la pagina, o almeno uno dei suoi frame, contenga un'intestazione di livello uno",
342 "help": "La pagina dovrebbe contenere un'intestazione di livello uno"
343 },
344 "presentation-role-conflict": {
345 "description": "Gli elementi contrassegnati come presentazionali non devono avere attributi ARIA globali o tabindex per assicurare che tutti gli screen reader li ignorino",
346 "help": "Assicurati che gli elementi contrassegnati come presentazionali vengano ignorati in modo coerente"
347 },
348 "region": {
349 "description": "Assicurati che tutti i contenuti della pagina siano contenuti nei landmark",
350 "help": "Tutti i contenuti della pagina dovrebbero essere contenuti nei landmark"
351 },
352 "role-img-alt": {
353 "description": "Assicurati che gli elementi [role=\"img\"] abbiano un testo alternativo",
354 "help": "Gli elementi [role=\"img\"] devono avere un testo alternativo"
355 },
356 "scope-attr-valid": {
357 "description": "Assicurati che l'attributo scope venga utilizzato correttamente nelle tabelle",
358 "help": "L'attributo scope deve essere utilizzato correttamente"
359 },
360 "scrollable-region-focusable": {
361 "description": "Assicurati che gli elementi che hanno contenuti scorrevoli siano accessibili da tastiera",
362 "help": "La regione scrollabile deve avere accesso da tastiera"
363 },
364 "select-name": {
365 "description": "Assicurati che l'elemento select abbia un nome accessibile",
366 "help": "L'elemento select deve avere un nome accessibile"
367 },
368 "server-side-image-map": {
369 "description": "Assicurati che non vengano utilizzate mappe immagini lato server",
370 "help": "Le mappe immagini lato server non devono essere utilizzate"
371 },
372 "skip-link": {
373 "description": "Assicurati che tutti gli skip link puntino ad un elemento che può ricevere focus",
374 "help": "L'elemento a cui lo skip link punta deve esistere e deve poter ricevere focus"
375 },
376 "svg-img-alt": {
377 "description": "Assicurati che gli elementi <svg> con un ruolo img, graphics-document o graphics-symbol abbiano un testo accessibile",
378 "help": "Gli elementi <svg> con un ruolo img devono avere un testo alternativo"
379 },
380 "tabindex": {
381 "description": "Assicurati che i valori degli attributi tabindex non siano maggiori di 0",
382 "help": "Gli elementi non devono avere un tabindex maggiore di zero"
383 },
384 "table-duplicate-name": {
385 "description": "Assicurati che l'elemento <caption> non contenga lo stesso testo dell'attributo summary",
386 "help": "Il riepilogo e la didascalia di una tabella non devono essere uguali"
387 },
388 "table-fake-caption": {
389 "description": "Assicurati che le tabelle con una didascalia utilizzino l'elemento <caption>.",
390 "help": "Le celle di dati o di intestazione non devono essere utilizzate per fornire una didascalia a una tabella di dati."
391 },
392 "target-size": {
393 "description": "Assicurati che gli elementi che possono essere attivati tramite puntatore abbiano dimensioni e spaziature sufficienti",
394 "help": "Tutti gli elementi che possono essere attivati tramite puntatore devono avere una largezza di 24px, o lasciare spazio sufficiente"
395 },
396 "td-has-header": {
397 "description": "Assicurati che ogni cella di dati non vuota in una tabella più grande di 3x3 abbia una o più intestazioni di tabella",
398 "help": "Le celle <td> non vuote in una tabella di dimensioni considerevoli devono avere un'intestazione di tabella associata"
399 },
400 "td-headers-attr": {
401 "description": "Assicurati che ogni cella in una tabella che utilizza l'attributo headers si riferisca solo ad altre celle nella stessa tabella",
402 "help": "Le celle di tabella che utilizzano l'attributo headers devono riferirsi solo a celle nella stessa tabella"
403 },
404 "th-has-data-cells": {
405 "description": "Assicurati che gli elementi <th> e gli elementi con role=columnheader/rowheader descrivano le celle di dati corrispondenti",
406 "help": "Le intestazioni di tabella in una tabella di dati devono fare riferimento a celle di dati"
407 },
408 "valid-lang": {
409 "description": "Assicurati che gli attributi lang abbiano valori validi",
410 "help": "L'attributo lang deve avere un valore valido"
411 },
412 "video-caption": {
413 "description": "Assicurati che gli elementi <video> abbiano didascalie",
414 "help": "Gli elementi <video> devono avere didascalie"
415 }
416 },
417 "checks": {
418 "abstractrole": {
419 "pass": "I ruoli astratti non vengono utilizzati",
420 "fail": {
421 "singular": "Il ruolo astratto non può essere utilizzato direttamente: ${data.values}",
422 "plural": "I ruoli astratti non possono essere utilizzati direttamente: ${data.values}"
423 }
424 },
425 "aria-allowed-attr": {
426 "pass": "Gli attributi ARIA sono utilizzati correttamente per il ruolo definito",
427 "fail": {
428 "singular": "L'attributo ARIA non è consentito: ${data.values}",
429 "plural": "Gli attributi ARIA non sono consentiti: ${data.values}"
430 },
431 "incomplete": "Verifica che non ci siano problemi se l'attributo ARIA viene ignorato su questo elemento: ${data.values}"
432 },
433 "aria-allowed-role": {
434 "pass": "Il ruolo ARIA è consentito per l'elemento dato",
435 "fail": {
436 "singular": "Il ruolo ARIA ${data.values} non è consentito per l'elemento dato",
437 "plural": "I ruoli ARIA ${data.values} non sono consentiti per l'elemento dato"
438 },
439 "incomplete": {
440 "singular": "Il ruolo ARIA ${data.values} deve essere rimosso quando l'elemento viene reso visibile, poiché non è consentito per l'elemento",
441 "plural": "I ruoli ARIA ${data.values} devono essere rimossi quando l'elemento viene reso visibile, poiché non sono consentiti per l'elemento"
442 }
443 },
444 "aria-busy": {
445 "pass": "L'elemento ha un attributo aria-busy",
446 "fail": "L'elemento utilizza aria-busy=\"true\" mentre viene mostrato un caricamento"
447 },
448 "aria-conditional-attr": {
449 "pass": "L'attributo ARIA è consentito",
450 "fail": {
451 "checkbox": "Rimuovi aria-checked, o impostalo su \"${data.checkState}\" per farlo combaciare allo stato reale della casella di controllo",
452 "rowSingular": "Questo attributo è supportato con le righe treegrid, ma non ${data.ownerRole}: ${data.invalidAttrs}",
453 "rowPlural": "Questi attributi sono supportati con le righe treegrid, ma non ${data.ownerRole}: ${data.invalidAttrs}"
454 }
455 },
456 "aria-errormessage": {
457 "pass": "aria-errormessage esiste e fa riferimento ad elementi visibili agli screen reader che utilizzano una tecnica aria-errormessage supportata",
458 "fail": {
459 "singular": "Il valore aria-errormessage `${data.values}` deve utilizzare una tecnica per annunciare il messaggio (ad esempio, aria-live, aria-describedby, role=alert, ecc.)",
460 "plural": "I valori aria-errormessage `${data.values}` devono utilizzare una tecnica per annunciare il messaggio (ad esempio, aria-live, aria-describedby, role=alert, ecc.)",
461 "hidden": "Il valore aria-errormessage `${data.values}` non può fare riferimento a un elemento nascosto"
462 },
463 "incomplete": {
464 "singular": "assicurati che il valore aria-errormessage `${data.values}` faccia riferimento a un elemento esistente",
465 "plural": "assicurati che i valori aria-errormessage `${data.values}` facciano riferimento a elementi esistenti",
466 "idrefs": "non è possibile determinare se l'elemento aria-errormessage esiste nella pagina: ${data.values}"
467 }
468 },
469 "aria-hidden-body": {
470 "pass": "Non è presente l'attributo aria-hidden sull'elemento body del documento",
471 "fail": "aria-hidden=true non deve essere presente sull'elemento body del documento"
472 },
473 "aria-level": {
474 "pass": "I valori aria-level sono validi",
475 "incomplete": "I valori aria-level superiori a 6 non sono supportati in tutte le combinazioni di screenreader e browser"
476 },
477 "aria-prohibited-attr": {
478 "pass": "L'attributo ARIA è consentito",
479 "fail": {
480 "hasRolePlural": "Gli attributi ${data.prohibited} non possono essere utilizzati con il ruolo \"${data.role}\".",
481 "hasRoleSingular": "L'attributo ${data.prohibited} non può essere utilizzato con il ruolo \"${data.role}\".",
482 "noRolePlural": "Gli attributi ${data.prohibited} non possono essere utilizzati su un ${data.nodeName} senza un ruolo valido.",
483 "noRoleSingular": "L'attributo ${data.prohibited} non può essere utilizzato su un ${data.nodeName} senza un ruolo valido."
484 },
485 "incomplete": {
486 "hasRoleSingular": "L'attributo ${data.prohibited} non è ben supportato con il ruolo \"${data.role}\".",
487 "hasRolePlural": "Gli attributi ${data.prohibited} non sono ben supportati con il ruolo \"${data.role}\".",
488 "noRoleSingular": "L'attributo ${data.prohibited} non è ben supportato su un ${data.nodeName} senza un ruolo valido.",
489 "noRolePlural": "Gli attributi ${data.prohibited} non sono ben supportati su un ${data.nodeName} senza un ruolo valido."
490 }
491 },
492 "aria-required-attr": {
493 "pass": "Tutti gli attributi ARIA obbligatori sono presenti",
494 "fail": {
495 "singular": "L'attributo ARIA obbligatorio non è presente: ${data.values}",
496 "plural": "Gli attributi ARIA obbligatori non sono presenti: ${data.values}"
497 }
498 },
499 "aria-required-children": {
500 "pass": "I figli ARIA obbligatori sono presenti",
501 "fail": {
502 "singular": "Il ruolo ARIA obbligatorio per l'elemento figlio non è presente: ${data.values}",
503 "plural": "Il ruolo ARIA obbligatorio per gli elementi figli non è presente: ${data.values}",
504 "unallowed": "L'elemento ha figli che non sono consentiti: ${data.values}"
505 },
506 "incomplete": {
507 "singular": "Ci si aspetta che venga aggiunto un figlio con un ruolo ARIA: ${data.values}",
508 "plural": "Ci si aspetta che vengano aggiunti i figli con un ruolo ARIA: ${data.values}"
509 }
510 },
511 "aria-required-parent": {
512 "pass": "Il ruolo ARIA obbligatorio per l'elemento genitore è presente",
513 "fail": {
514 "singular": "Il ruolo ARIA obbligatorio per l'elemento genitore non è presente: ${data.values}",
515 "plural": "I ruoli ARIA obbligatori per gli elementi genitori non sono presenti: ${data.values}"
516 }
517 },
518 "aria-roledescription": {
519 "pass": "aria-roledescription utilizzato su un ruolo semantico supportato",
520 "incomplete": "Verifica che aria-roledescription venga annunciato dagli screen reader supportati",
521 "fail": "Assegna all'elemento un ruolo che supporta aria-roledescription"
522 },
523 "aria-unsupported-attr": {
524 "pass": "L'attributo ARIA è supportato",
525 "fail": "L'attributo ARIA non è ampiamente supportato dagli screen reader e dalle tecnologie assistive: ${data.values}"
526 },
527 "aria-valid-attr-value": {
528 "pass": "I valori degli attributi ARIA sono validi",
529 "fail": {
530 "singular": "Il valore dell'attributo ARIA non è valido: ${data.values}",
531 "plural": "I valori degli attributi ARIA non sono validi: ${data.values}"
532 },
533 "incomplete": {
534 "noId": "Nella pagina non esiste un elemento con ID corrispondente all'attributo ARIA: ${data.needsReview}",
535 "noIdShadow": "Nella pagina non esiste un elemento con ID corrispondente all'attributo ARIA o è un discendente di un diverso albero shadow DOM: ${data.needsReview}",
536 "ariaCurrent": "Il valore dell'attributo ARIA non è valido e verrà trattato come \"aria-current=true\": ${data.needsReview}",
537 "idrefs": "Non è possibile determinare se esiste un elemento con ID corrispondente all'attributo ARIA nella pagina: ${data.needsReview}",
538 "empty": "Il valore dell'attributo ARIA viene ignorato mentre è vuoto: ${data.needsReview}"
539 }
540 },
541 "aria-valid-attr": {
542 "pass": "Il nome dell'attributo ARIA è valido",
543 "fail": {
544 "singular": "Il nome dell'attributo ARIA non è valido: ${data.values}",
545 "plural": "I nomi degli attributi ARIA non sono validi: ${data.values}"
546 }
547 },
548 "braille-label-equivalent": {
549 "pass": "aria-braillelabel viene utilizzato su un elemento con testo accessibile",
550 "fail": "aria-braillelabel viene utilizzato su un elemento senza testo accessibile",
551 "incomplete": "Non è possibile calcolare il testo accessibile"
552 },
553 "braille-roledescription-equivalent": {
554 "pass": "aria-brailleroledescription viene utilizzato su un elemento con aria-roledescription",
555 "fail": {
556 "noRoleDescription": "aria-brailleroledescription viene utilizzato su un elemento senza aria-roledescription",
557 "emptyRoleDescription": "aria-brailleroledescription viene utilizzato su un elemento con aria-roledescription vuoto"
558 }
559 },
560 "deprecatedrole": {
561 "pass": "Il ruolo ARIA non è deprecato",
562 "fail": "Il ruolo utilizzato è deprecato: ${data}"
563 },
564 "fallbackrole": {
565 "pass": "Viene utilizzato un solo valore di ruolo",
566 "fail": "Utilizza un solo valore di ruolo, poiché i ruoli di fallback non sono supportati nei browser più vecchi",
567 "incomplete": "Utilizza solo il ruolo 'presentation' o 'none' poiché sono sinonimi."
568 },
569 "has-global-aria-attribute": {
570 "pass": {
571 "singular": "L'elemento ha un attributo ARIA globale: ${data.values}",
572 "plural": "L'elemento ha attributi ARIA globali: ${data.values}"
573 },
574 "fail": "L'elemento non ha un attributo ARIA globale"
575 },
576 "has-widget-role": {
577 "pass": "L'elemento ha un ruolo widget.",
578 "fail": "L'elemento non ha un ruolo widget."
579 },
580 "invalidrole": {
581 "pass": "Il ruolo ARIA è valido",
582 "fail": {
583 "singular": "Il ruolo deve essere uno dei ruoli ARIA validi: ${data.values}",
584 "plural": "I ruoli devono essere uno dei ruoli ARIA validi: ${data.values}"
585 }
586 },
587 "is-element-focusable": {
588 "pass": "L'elemento può ricevere focus.",
589 "fail": "L'elemento non può ricevere focus."
590 },
591 "no-implicit-explicit-label": {
592 "pass": "Non c'è incongruenza tra etichetta <label> e nome accessibile",
593 "incomplete": "Verifica che l'etichetta <label> non debba far parte del nome del campo ARIA ${data}"
594 },
595 "unsupportedrole": {
596 "pass": "Il ruolo ARIA è supportato",
597 "fail": "Il ruolo utilizzato non è ampiamente supportato dagli screen reader e dalle tecnologie assistive: ${data}"
598 },
599 "valid-scrollable-semantics": {
600 "pass": "L'elemento ha una semantica valida per un elemento presente nell'ordine di focus.",
601 "fail": "L'elemento ha una semantica non valida per un elemento presente nell'ordine di focus."
602 },
603 "color-contrast-enhanced": {
604 "pass": "L'elemento ha un contrasto di colore sufficiente di ${data.contrastRatio}",
605 "fail": {
606 "default": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} (colore in primo piano: ${data.fgColor}, colore di sfondo: ${data.bgColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}",
607 "fgOnShadowColor": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} tra il primo piano e il colore dell'ombra (colore in primo piano: ${data.fgColor}, colore dell'ombra del testo: ${data.shadowColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}",
608 "shadowOnBgColor": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} tra il colore dell'ombra e il colore di sfondo (colore dell'ombra del testo: ${data.shadowColor}, colore di sfondo: ${data.bgColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}"
609 },
610 "incomplete": {
611 "default": "Impossibile determinare il rapporto di contrasto",
612 "bgImage": "Il colore di sfondo dell'elemento non può essere determinato a causa di un'immagine di sfondo",
613 "bgGradient": "Il colore di sfondo dell'elemento non può essere determinato a causa di un gradiente di sfondo",
614 "imgNode": "Il colore di sfondo dell'elemento non può essere determinato perché l'elemento contiene un nodo immagine",
615 "bgOverlap": "Il colore di sfondo dell'elemento non può essere determinato perché c'è un altro elemento sovrapposto",
616 "fgAlpha": "Il colore in primo piano dell'elemento non può essere determinato a causa della trasparenza alfa",
617 "elmPartiallyObscured": "Il colore di sfondo dell'elemento non può essere determinato perché è parzialmente oscurato da un altro elemento",
618 "elmPartiallyObscuring": "Il colore di sfondo dell'elemento non può essere determinato perché si sovrappone parzialmente ad altri elementi",
619 "outsideViewport": "Il colore di sfondo dell'elemento non può essere determinato perché è al di fuori della finestra di visualizzazione",
620 "equalRatio": "L'elemento ha un rapporto di contrasto di 1:1 con lo sfondo",
621 "shortTextContent": "Il contenuto dell'elemento è troppo breve per determinare se si tratta di un contenuto di testo effettivo",
622 "nonBmp": "Il contenuto dell'elemento contiene solo caratteri non di testo",
623 "pseudoContent": "Il colore di sfondo dell'elemento non può essere determinato a causa di uno pseudo-elemento"
624 }
625 },
626 "color-contrast": {
627 "pass": {
628 "default": "L'elemento ha un contrasto di colore sufficiente di ${data.contrastRatio}",
629 "hidden": "L'elemento è nascosto"
630 },
631 "fail": {
632 "default": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} (colore in primo piano: ${data.fgColor}, colore di sfondo: ${data.bgColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}",
633 "fgOnShadowColor": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} tra il primo piano e il colore dell'ombra (colore in primo piano: ${data.fgColor}, colore dell'ombra del testo: ${data.shadowColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}",
634 "shadowOnBgColor": "L'elemento ha un contrasto di colore insufficiente di ${data.contrastRatio} tra il colore dell'ombra e il colore di sfondo (colore dell'ombra del testo: ${data.shadowColor}, colore di sfondo: ${data.bgColor}, dimensione del font: ${data.fontSize}, peso del font: ${data.fontWeight}). Contrasto atteso di ${data.expectedContrastRatio}"
635 },
636 "incomplete": {
637 "default": "Impossibile determinare il rapporto di contrasto",
638 "bgImage": "Il colore di sfondo dell'elemento non può essere determinato a causa di un'immagine di sfondo",
639 "bgGradient": "Il colore di sfondo dell'elemento non può essere determinato a causa di un gradiente di sfondo",
640 "imgNode": "Il colore di sfondo dell'elemento non può essere determinato perché l'elemento contiene un nodo immagine",
641 "bgOverlap": "Il colore di sfondo dell'elemento non può essere determinato perché c'è un altro elemento sovrapposto",
642 "complexTextShadows": "Il contrasto dell'elemento non può essere determinato perché utilizza ombre di testo complesse",
643 "fgAlpha": "Il colore in primo piano dell'elemento non può essere determinato a causa della trasparenza alfa",
644 "elmPartiallyObscured": "Il colore di sfondo dell'elemento non può essere determinato perché è parzialmente oscurato da un altro elemento",
645 "elmPartiallyObscuring": "Il colore di sfondo dell'elemento non può essere determinato perché si sovrappone parzialmente ad altri elementi",
646 "outsideViewport": "Il colore di sfondo dell'elemento non può essere determinato perché è al di fuori della finestra di visualizzazione",
647 "equalRatio": "L'elemento ha un rapporto di contrasto di 1:1 con lo sfondo",
648 "shortTextContent": "Il contenuto dell'elemento è troppo breve per determinare se si tratta di un contenuto di testo effettivo",
649 "nonBmp": "Il contenuto dell'elemento contiene solo caratteri non di testo",
650 "pseudoContent": "Il colore di sfondo dell'elemento non può essere determinato a causa di uno pseudo-elemento"
651 }
652 },
653 "link-in-text-block-style": {
654 "pass": "I collegamenti possono essere distinti dal testo circostante grazie ad uno stile visivo",
655 "incomplete": {
656 "default": "Verifica se il collegamento necessita di uno stile per distinguerlo dal testo circostante",
657 "pseudoContent": "Verifica se lo pseudo-stile del collegamento è sufficiente per distinguerlo dal testo circostante"
658 },
659 "fail": "Il collegamento non ha uno stile (come la sottolineatura) per distinguerlo dal testo circostante"
660 },
661 "link-in-text-block": {
662 "pass": "I collegamenti possono essere distinti dal testo circostante in qualche modo che non sia solo attraverso il colore",
663 "fail": {
664 "fgContrast": "Il collegamento ha un contrasto di colore insufficiente di ${data.contrastRatio}:1 con il testo circostante. (Contrasto minimo è ${data.requiredContrastRatio}:1, colore del testo del collegamento: ${data.nodeColor}, colore del testo circostante: ${data.parentColor})",
665 "bgContrast": "Lo sfondo del collegamento ha un contrasto di colore insufficiente di ${data.contrastRatio} (Contrasto minimo è ${data.requiredContrastRatio}:1, colore dello sfondo del collegamento: ${data.nodeBackgroundColor}, colore dello sfondo circostante: ${data.parentBackgroundColor})"
666 },
667 "incomplete": {
668 "default": "Il rapporto di contrasto dei colori in primo piano dell'elemento non può essere determinato",
669 "bgContrast": "Il rapporto di contrasto dello sfondo dell'elemento non può essere determinato",
670 "bgImage": "Il rapporto di contrasto dell'elemento non può essere determinato a causa di un'immagine di sfondo",
671 "bgGradient": "Il rapporto di contrasto dell'elemento non può essere determinato a causa di un gradiente di sfondo",
672 "imgNode": "Il rapporto di contrasto dell'elemento non può essere determinato perché l'elemento contiene un nodo immagine",
673 "bgOverlap": "Il rapporto di contrasto dell'elemento non può essere determinato a causa della sovrapposizione dell'elemento"
674 }
675 },
676 "autocomplete-appropriate": {
677 "pass": "il valore di autocomplete è appropriato per questo elemento",
678 "fail": "il valore di autocomplete non è appropriato per questo tipo di input"
679 },
680 "autocomplete-valid": {
681 "pass": "l'attributo autocomplete è formattato correttamente",
682 "fail": "l'attributo autocomplete non è formattato correttamente"
683 },
684 "accesskeys": {
685 "pass": "Il valore dell'attributo accesskey è univoco",
686 "fail": "Il documento ha più elementi con lo stesso accesskey"
687 },
688 "focusable-content": {
689 "pass": "L'elemento contiene elementi che possono ricevere focus",
690 "fail": "L'elemento dovrebbe avere contenuto che può ricevere focus"
691 },
692 "focusable-disabled": {
693 "pass": "Non ci sono elementi che possono ricevere focus all'interno dell'elemento",
694 "incomplete": "Controlla se gli elementi che possono ricevere focus spostano immediatamente l'indicatore di focus",
695 "fail": "Il contenuto che può ricevere focus dovrebbe essere disabilitato o rimosso dal DOM"
696 },
697 "focusable-element": {
698 "pass": "L'elemento può ricevere focus",
699 "fail": "L'elemento dovrebbe poter ricevere focus"
700 },
701 "focusable-modal-open": {
702 "pass": "Non ci sono elementi che possono ricevere focus mentre è aperta una modale",
703 "incomplete": "Controlla che gli elementi che possono ricevere focus non siano tabbabili nello stato attuale"
704 },
705 "focusable-no-name": {
706 "pass": "L'elemento non è nell'ordine di tab o ha un testo accessibile",
707 "fail": "L'elemento è nell'ordine di tab e non ha un testo accessibile",
708 "incomplete": "Non è possibile determinare se l'elemento ha un nome accessibile"
709 },
710 "focusable-not-tabbable": {
711 "pass": "Non ci sono elementi che possono ricevere focus all'interno dell'elemento",
712 "incomplete": "Controlla se gli elementi che possono ricevere focus spostano immediatamente l'indicatore di focus",
713 "fail": "Il contenuto che può ricevere focus dovrebbe avere tabindex=\"-1\" o essere rimosso dal DOM"
714 },
715 "frame-focusable-content": {
716 "pass": "L'elemento non ha discendenti che possono ricevere focus",
717 "fail": "L'elemento ha discendenti che possono ricevere focus",
718 "incomplete": "Non è stato possibile determinare se l'elemento ha discendenti"
719 },
720 "landmark-is-top-level": {
721 "pass": "Il landmark ${data.role} è al livello superiore.",
722 "fail": "Il landmark ${data.role} è contenuto in un altro landmark."
723 },
724 "no-focusable-content": {
725 "pass": "L'elemento non ha discendenti che possono ricevere focus",
726 "fail": {
727 "default": "L'elemento ha discendenti che possono ricevere focus",
728 "notHidden": "L'utilizzo di un tabindex negativo su un elemento all'interno di un controllo interattivo non impedisce alle tecnologie assistive di spostare il focus sull'elemento (anche con aria-hidden=\"true\")"
729 },
730 "incomplete": "Non è stato possibile determinare se l'elemento ha discendenti"
731 },
732 "page-has-heading-one": {
733 "pass": "La pagina ha almeno un'intestazione di livello uno",
734 "fail": "La pagina deve avere un'intestazione di livello uno"
735 },
736 "page-has-main": {
737 "pass": "Il documento ha almeno un landmark main",
738 "fail": "Il documento non ha un landmark main"
739 },
740 "page-no-duplicate-banner": {
741 "pass": "Il documento non ha più di un landmark banner",
742 "fail": "Il documento ha più di un landmark banner"
743 },
744 "page-no-duplicate-contentinfo": {
745 "pass": "Il documento non ha più di un landmark contentinfo",
746 "fail": "Il documento ha più di un landmark contentinfo"
747 },
748 "page-no-duplicate-main": {
749 "pass": "Il documento non ha più di un landmark main",
750 "fail": "Il documento ha più di un landmark main"
751 },
752 "tabindex": {
753 "pass": "L'elemento non ha un tabindex maggiore di 0",
754 "fail": "L'elemento ha un tabindex maggiore di 0"
755 },
756 "alt-space-value": {
757 "pass": "Il valore dell'attributo alt dell'elemento è valido",
758 "fail": "L'elemento ha un attributo alt che contiene solo uno spazio, che non viene ignorato da tutti gli screen reader"
759 },
760 "duplicate-img-label": {
761 "pass": "L'elemento non duplica il testo esistente nel testo alternativo dell'immagine",
762 "fail": "L'elemento contiene un elemento immagine con testo alternativo che duplica il testo esistente"
763 },
764 "explicit-label": {
765 "pass": "L'elemento del modulo ha un'etichetta esplicita <label>",
766 "fail": "L'elemento del modulo non ha un'etichetta esplicita <label>",
767 "incomplete": "Non è possibile determinare se l'elemento del modulo ha un'etichetta esplicita <label>"
768 },
769 "help-same-as-label": {
770 "pass": "Il testo di aiuto (title o aria-describedby) non duplica il testo dell'etichetta",
771 "fail": "Il testo di aiuto (title o aria-describedby) è lo stesso del testo dell'etichetta"
772 },
773 "hidden-explicit-label": {
774 "pass": "L'elemento del modulo ha un'etichetta esplicita <label> visibile",
775 "fail": "L'elemento del modulo ha un'etichetta esplicita <label> nascosta",
776 "incomplete": "Non è possibile determinare se l'elemento del modulo ha un'etichetta esplicita <label> nascosta"
777 },
778 "implicit-label": {
779 "pass": "L'elemento del modulo ha un'etichetta implicita (racchiusa) <label>",
780 "fail": "L'elemento del modulo non ha un'etichetta implicita (racchiusa) <label>",
781 "incomplete": "Non è possibile determinare se l'elemento del modulo ha un'etichetta implicita (racchiusa) <label>"
782 },
783 "label-content-name-mismatch": {
784 "pass": "L'elemento contiene del testo visibile come parte del suo nome accessibile",
785 "fail": "Il testo all'interno dell'elemento non è incluso nel nome accessibile"
786 },
787 "multiple-label": {
788 "pass": "Il campo del modulo non ha più elementi etichetta",
789 "incomplete": "L'utilizzo di più elementi etichetta non è ampiamente supportato dalle tecnologie assistive. Assicurati che la prima etichetta contenga tutte le informazioni necessarie."
790 },
791 "title-only": {
792 "pass": "L'elemento del modulo non utilizza solo l'attributo title per generare la sua etichetta",
793 "fail": "Solo il titolo viene utilizzato per generare l'etichetta dell'elemento del modulo"
794 },
795 "landmark-is-unique": {
796 "pass": "I landmark devono avere un ruolo univoco o una combinazione univoca di ruolo/etichetta/titolo (come ad esempio un nome accessibile univico)",
797 "fail": "Il landmark deve avere un aria-label, aria-labelledby o titolo univoco per rendere i landmark distinguibili"
798 },
799 "has-lang": {
800 "pass": "L'elemento <html> ha un attributo lang",
801 "fail": {
802 "noXHTML": "L'attributo xml:lang non è valido nelle pagine HTML, utilizza l'attributo lang.",
803 "noLang": "L'elemento <html> non ha un attributo lang"
804 }
805 },
806 "valid-lang": {
807 "pass": "Il valore dell'attributo lang è incluso nell'elenco delle lingue valide",
808 "fail": "Il valore dell'attributo lang non è incluso nell'elenco delle lingue valide"
809 },
810 "xml-lang-mismatch": {
811 "pass": "Gli attributi lang e xml:lang hanno la stessa lingua di base",
812 "fail": "Gli attributi lang e xml:lang non hanno la stessa lingua di base"
813 },
814 "dlitem": {
815 "pass": "L'elemento di descrizione della lista ha un elemento <dl> come genitore",
816 "fail": "L'elemento di descrizione della lista non ha un elemento <dl> come genitore"
817 },
818 "listitem": {
819 "pass": "L'elemento della lista ha un elemento <ul>, <ol> o role=\"list\" come genitore",
820 "fail": {
821 "default": "L'elemento della lista non ha come genitore un elemento <ul> o <ol>",
822 "roleNotValid": "L'elemento della lista non ha come genitore un elemento <ul>, <ol> o un elemento con role=\"list\""
823 }
824 },
825 "only-dlitems": {
826 "pass": "L'elemento dl contiene al suo interno solo figli diretti consentiti; <dt>, <dd>, o elementi <div>",
827 "fail": "L'elemento dl ha figli diretti che non sono consentiti: ${data.values}"
828 },
829 "only-listitems": {
830 "pass": "L'elemento della lista contiene al suo interno solo figli diretti consentiti",
831 "fail": "L'elemento della lista ha figli diretti che non sono consentiti: ${data.values}"
832 },
833 "structured-dlitems": {
834 "pass": "Quando non è vuoto, l'elemento ha sia elementi <dt> che <dd>",
835 "fail": "Quando non è vuoto, l'elemento non ha nemmeno un elemento <dt> seguito da almeno un elemento <dd>"
836 },
837 "caption": {
838 "pass": "L'elemento multimediale ha una didascalia",
839 "incomplete": "Controlla che le didascalie siano disponibili per l'elemento"
840 },
841 "frame-tested": {
842 "pass": "L'iframe è stato testato con axe-core",
843 "fail": "L'iframe non può essere testato con axe-core",
844 "incomplete": "L'iframe deve ancora essere testato con axe-core"
845 },
846 "no-autoplay-audio": {
847 "pass": "<video> o <audio> non riproduce audio per più della durata consentita o ha un meccanismo di controllo",
848 "fail": "<video> o <audio> riproduce audio per più della durata consentita e non ha un meccanismo di controllo",
849 "incomplete": "Controlla che il <video> o <audio> non riproduca audio per più della durata consentita o fornisca un meccanismo di controllo"
850 },
851 "css-orientation-lock": {
852 "pass": "Il display è utilizzabile e l'orientamento del dispositivo non viene bloccato",
853 "fail": "Il blocco dell'orientamento tramite CSS viene applicato e rende il display non utilizzabile",
854 "incomplete": "Il blocco dell'orientamento tramite CSS non può essere determinato"
855 },
856 "meta-viewport-large": {
857 "pass": "Il tag <meta> non impedisce lo zoom in modo significativo sui dispositivi mobili",
858 "fail": "Il tag <meta> limita lo zoom sui dispositivi mobili"
859 },
860 "meta-viewport": {
861 "pass": "Il tag <meta> non disabilita lo zoom sui dispositivi mobili",
862 "fail": "${data} sul tag <meta> disabilita lo zoom sui dispositivi mobili"
863 },
864 "target-offset": {
865 "pass": "L'elemento ha spazio sufficiente dai suoi vicini più prossimi. Lo spazio sicuro e cliccabile ha un diametro di ${data.closestOffset}px, che è superiore al requisito di ${data.minOffset}px.",
866 "fail": "L'elemento non ha spazio sufficiente rispetto ai suoi vicini più prossimi. Lo spazio sicuro e cliccabile ha un diametro di ${data.closestOffset}px, che è inferiore rispetto al requisito di ${data.minOffset}px.",
867 "incomplete": {
868 "default": "L'elemento con tabindex negativo non ha spazio sufficiente rispetto ai suoi vicini più prossimi. Lo spazio sicuro e cliccabile ha un diametro di ${data.closestOffset}px, che è inferiore rispetto al requisito di ${data.minOffset}px. Si tratta di un elemento che può essere attivato?",
869 "nonTabbableNeighbor": "L'elemento non ha spazio sufficiente rispetto ai suoi vicini più prossimi. Lo spazio sicuro e cliccabile ha un diametro di ${data.closestOffset}px, che è inferiore rispetto al requisito di ${data.minOffset}px. Il vicino più prossimo è un elemento che può essere attivato?"
870 }
871 },
872 "target-size": {
873 "pass": {
874 "default": "Il controllo ha dimensioni sufficienti (${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px)",
875 "obscured": "Il controllo viene ignorato perché è completamente oscurato e quindi non cliccabile"
876 },
877 "fail": {
878 "default": "L'elemento ha dimensioni insufficienti (${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px)",
879 "partiallyObscured": "L'elemento ha dimensioni insufficienti perché è parzialmente oscurato (lo spazio più piccolo è ${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px)"
880 },
881 "incomplete": {
882 "default": "L'elemento con tabindex negativo ha dimensioni insufficienti (${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px). Si tratta di un elemento che può essere attivato?",
883 "contentOverflow": "Le dimensioni dell'elemento non possono essere determinate con precisione a causa del contenuto in overflow",
884 "partiallyObscured": "L'elemento con tabindex negativo ha dimensioni insufficienti perché è parzialmente oscurato (lo spazio più piccolo è ${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px). Si tratta di un elemento che può essere attivato?",
885 "partiallyObscuredNonTabbable": "L'elemento ha dimensioni insufficienti perché è parzialmente oscurato da un vicino con tabindex negativo (lo spazio più piccolo è ${data.width}px per ${data.height}px, dovrebbe essere almeno ${data.minSize}px per ${data.minSize}px). Il vicino più prossimo è un elemento che può essere attivato?"
886 }
887 },
888 "header-present": {
889 "pass": "La pagina ha un'intestazione",
890 "fail": "La pagina non ha nemmeno un'intestazione"
891 },
892 "heading-order": {
893 "pass": "L'ordine delle intestazioni è valido",
894 "fail": "L'ordine delle intestazioni non è valido",
895 "incomplete": "Non è possibile determinare l'intestazione precedente"
896 },
897 "identical-links-same-purpose": {
898 "pass": "Non ci sono altri collegamenti con lo stesso nome, che puntano ad un URL diverso",
899 "incomplete": "Controlla che i collegamenti abbiano lo stesso scopo, o siano intenzionalmente ambigui."
900 },
901 "internal-link-present": {
902 "pass": "Trovato skip link valido",
903 "fail": "Non è stato trovato alcuno skip link valido"
904 },
905 "landmark": {
906 "pass": "La pagina ha una regione landmark",
907 "fail": "La pagina non ha una regione landmark"
908 },
909 "meta-refresh-no-exceptions": {
910 "pass": "Il tag <meta> non aggiorna immediatamente la pagina",
911 "fail": "Il tag <meta> forza il refresh temporizzato della pagina"
912 },
913 "meta-refresh": {
914 "pass": "Il tag <meta> non aggiorna immediatamente la pagina",
915 "fail": "Il tag <meta> forza il refresh temporizzato della pagina (al di sotto delle 20 ore)"
916 },
917 "p-as-heading": {
918 "pass": "Gli elementi <p> non sono disegnati come intestazioni",
919 "fail": "Al posto di elementi <p> disegnati come intestazioni, dovrebbero essere utilizzati elementi di intestazione",
920 "incomplete": "Non è possibile determinare se gli elementi <p> sono stati disegnati come intestazioni"
921 },
922 "region": {
923 "pass": "Tutto il contenuto della pagina è contenuto in landmark",
924 "fail": "Alcuni contenuti della pagina non sono contenuti in landmark"
925 },
926 "skip-link": {
927 "pass": "L'elemento a cui lo skip link punta esiste",
928 "incomplete": "L'elemento a cui lo skip link punta deve diventare visibile quando attivato",
929 "fail": "L'elemento a cui lo skip link punta non esiste"
930 },
931 "unique-frame-title": {
932 "pass": "L'attributo title dell'elemento è univoco",
933 "fail": "L'attributo title dell'elemento non è univoco"
934 },
935 "duplicate-id-active": {
936 "pass": "Il documento non ha elementi attivi che condividono lo stesso attributo id",
937 "fail": "Il documento ha elementi attivi con lo stesso attributo id: ${data}"
938 },
939 "duplicate-id-aria": {
940 "pass": "Il documento non ha elementi referenziati con ARIA o etichette che condividono lo stesso attributo id",
941 "fail": "Il documento ha più elementi referenziati con ARIA con lo stesso attributo id: ${data}"
942 },
943 "duplicate-id": {
944 "pass": "Il documento non ha elementi statici che condividono lo stesso attributo id",
945 "fail": "Il documento ha più elementi statici con lo stesso attributo id: ${data}"
946 },
947 "aria-label": {
948 "pass": "L'attributo aria-label esiste e non è vuoto",
949 "fail": "L'attributo aria-label non esiste o è vuoto"
950 },
951 "aria-labelledby": {
952 "pass": "L'attributo aria-labelledby esiste e fa riferimento ad elementi che sono visibili agli screen reader",
953 "fail": "L'attributo aria-labelledby non esiste, fa riferimento ad elementi che non esistono o fa riferimento ad elementi che sono vuoti",
954 "incomplete": "assicurati che aria-labelledby faccia riferimento a un elemento esistente"
955 },
956 "avoid-inline-spacing": {
957 "pass": "Non sono stati specificati stili inline con '!important' che influenzano lo spaziatura del testo",
958 "fail": {
959 "singular": "Rimuovi '!important' dallo stile inline ${data.values}, poiché la sovrascrittura di questo non è supportata dalla maggior parte dei browser",
960 "plural": "Rimuovi '!important' dagli stili inline ${data.values}, poiché la sovrascrittura di questo non è supportata dalla maggior parte dei browser"
961 }
962 },
963 "button-has-visible-text": {
964 "pass": "L'elemento ha del testo interno che è visibile agli screen reader",
965 "fail": "L'elemento non ha del testo interno che è visibile agli screen reader",
966 "incomplete": "Non è possibile determinare se l'elemento ha figli"
967 },
968 "doc-has-title": {
969 "pass": "Il documento ha un elemento <title> non vuoto",
970 "fail": "Il documento non ha un elemento <title> non vuoto"
971 },
972 "exists": {
973 "pass": "L'elemento non esiste",
974 "incomplete": "L'elemento esiste"
975 },
976 "has-alt": {
977 "pass": "L'elemento ha un attributo alt",
978 "fail": "L'elemento non ha un attributo alt"
979 },
980 "has-visible-text": {
981 "pass": "L'elemento ha del testo che è visibile agli screen reader",
982 "fail": "L'elemento non ha del testo che è visibile agli screen reader",
983 "incomplete": "Non è possibile determinare se l'elemento ha figli"
984 },
985 "important-letter-spacing": {
986 "pass": "La spaziatura delle lettere nell'attributo style non è impostato su !important, o rispetta il requisito minimo",
987 "fail": "La spaziatura delle lettere nell'attributo style non deve utilizzare !important, o deve essere impostata a ${data.minValue}em (attuale ${data.value}em)"
988 },
989 "important-line-height": {
990 "pass": "l'interlinea nell'attributo style non è impostata su !important, o rispetta il requisito minimo",
991 "fail": "l'interlinea nell'attributo style non deve utilizzare !important, o deve essere impostata a ${data.minValue}em (attuale ${data.value}em)"
992 },
993 "important-word-spacing": {
994 "pass": "La spaziatura delle parole nell'attributo style non è impostata su !important, o rispetta il requisito minimo",
995 "fail": "La spaziatura delle parole nell'attributo style non deve utilizzare !important, o deve essere impostata a ${data.minValue}em (attuale ${data.value}em)"
996 },
997 "is-on-screen": {
998 "pass": "L'elemento non è visibile",
999 "fail": "L'elemento è visibile"
1000 },
1001 "non-empty-alt": {
1002 "pass": "L'elemento ha un attributo alt non vuoto",
1003 "fail": {
1004 "noAttr": "L'elemento non ha un attributo alt",
1005 "emptyAttr": "L'elemento ha un attributo alt vuoto"
1006 }
1007 },
1008 "non-empty-if-present": {
1009 "pass": {
1010 "default": "L'elemento non ha un attributo value",
1011 "has-label": "L'elemento ha un attributo value non vuoto"
1012 },
1013 "fail": "L'elemento ha un attributo value e l'attributo value è vuoto"
1014 },
1015 "non-empty-placeholder": {
1016 "pass": "L'elemento ha un attributo placeholder",
1017 "fail": {
1018 "noAttr": "L'elemento non ha un attributo placeholder",
1019 "emptyAttr": "L'elemento ha un attributo placeholder vuoto"
1020 }
1021 },
1022 "non-empty-title": {
1023 "pass": "L'elemento ha un attributo title",
1024 "fail": {
1025 "noAttr": "L'elemento non ha un attributo title",
1026 "emptyAttr": "L'elemento ha un attributo title vuoto"
1027 }
1028 },
1029 "non-empty-value": {
1030 "pass": "L'elemento ha un attributo value non vuoto",
1031 "fail": {
1032 "noAttr": "L'elemento non ha un attributo value",
1033 "emptyAttr": "L'elemento ha un attributo value vuoto"
1034 }
1035 },
1036 "presentational-role": {
1037 "pass": "La semantica predefinita dell'elemento è stata sostituita da role=\"${data.role}\"",
1038 "fail": {
1039 "default": "La semantica predefinita dell'elemento non è stata sostituita da role=\"none\" o role=\"presentation\"",
1040 "globalAria": "Il ruolo dell'elemento non è presentazionale perché ha un attributo ARIA globale",
1041 "focusable": "Il ruolo dell'elemento non è presentazionale perché è focusabile",
1042 "both": "Il ruolo dell'elemento non è presentazionale perché ha un attributo ARIA globale ed è focusabile",
1043 "iframe": "L'utilizzo dell'attributo \"title\" su un elemento ${data.nodeName} con un ruolo presentazionale si comporta in modo inconsistente a seconda dello screen reader"
1044 }
1045 },
1046 "role-none": {
1047 "pass": "La semantica predefinita dell'elemento è stata sostituita da role=\"none\"",
1048 "fail": "La semantica predefinita dell'elemento non è stata sostituita da role=\"none\""
1049 },
1050 "role-presentation": {
1051 "pass": "La semantica predefinita dell'elemento è stata sostituita da role=\"presentation\"",
1052 "fail": "La semantica predefinita dell'elemento non è stata sostituita da role=\"presentation\""
1053 },
1054 "svg-non-empty-title": {
1055 "pass": "L'elemento ha un figlio che è un titolo",
1056 "fail": {
1057 "noTitle": "L'elemento non ha figli che sono titoli",
1058 "emptyTitle": "Il titolo figlio dell'elemento è vuoto"
1059 },
1060 "incomplete": "Non è possibile determinare se l'elemento ha un figlio che è un titolo"
1061 },
1062 "caption-faked": {
1063 "pass": "La prima riga di una tabella non viene utilizzata come didascalia",
1064 "fail": "Il primo figlio della tabella dovrebbe essere una didascalia invece di una cella di tabella"
1065 },
1066 "html5-scope": {
1067 "pass": "L'attributo scope viene utilizzato solo sugli elementi di intestazione della tabella (<th>)",
1068 "fail": "In HTML 5, gli attributi scope possono essere utilizzati solo sugli elementi di intestazione della tabella (<th>)"
1069 },
1070 "same-caption-summary": {
1071 "pass": "Il contenuto dell'attributo summary e dell'elemento <caption> non sono duplicati",
1072 "fail": "Il contenuto dell'attributo summary e dell'elemento <caption> sono identici",
1073 "incomplete": "Non è possibile determinare se l'elemento <table> ha una didascalia"
1074 },
1075 "scope-value": {
1076 "pass": "L'attributo scope viene utilizzato correttamente",
1077 "fail": "Il valore dell'attributo scope può essere solo 'row' o 'col'"
1078 },
1079 "td-has-header": {
1080 "pass": "Tutte le celle di dati non vuote hanno intestazioni di tabella",
1081 "fail": "Alcune celle di dati non vuote non hanno intestazioni di tabella"
1082 },
1083 "td-headers-attr": {
1084 "pass": "L'attributo headers viene utilizzato esclusivamente per fare riferimento ad altre celle nella tabella",
1085 "incomplete": "L'attributo headers è vuoto",
1086 "fail": "L'attributo headers non viene utilizzato esclusivamente per fare riferimento ad altre celle nella tabella"
1087 },
1088 "th-has-data-cells": {
1089 "pass": "Tutte le celle di intestazione della tabella fanno riferimento a celle di dati",
1090 "fail": "Non tutte le celle di intestazione della tabella fanno riferimento a celle di dati",
1091 "incomplete": "Le celle di dati della tabella sono vuote o mancanti"
1092 },
1093 "hidden-content": {
1094 "pass": "Tutto il contenuto della pagina è stato analizzato.",
1095 "fail": "Ci sono stati problemi nell'analizzare il contenuto di questa pagina.",
1096 "incomplete": "C'è del contenuto nascosto nella pagina che non è stato analizzato. Dovrai attivare la visualizzazione di questo contenuto per poterlo analizzare."
1097 }
1098 },
1099 "failureSummaries": {
1100 "any": {
1101 "failureMessage": "Correggi uno dei seguenti:{{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
1102 },
1103 "none": {
1104 "failureMessage": "Correggi tutti i seguenti:{{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
1105 }
1106 },
1107 "incompleteFallbackMessage": "axe non è stato in grado di determinare il motivo. È il momento di utilizzare l'element inspector!"
1108}
Note: See TracBrowser for help on using the repository browser.