source: frontend/node_modules/axe-core/locales/pl.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: 61.1 KB
Line 
1{
2 "lang": "pl",
3 "rules": {
4 "accesskeys": {
5 "description": "Wartość każdego atrybutu accessskey jest unikalna.",
6 "help": "Wartość atrybutu accessskey musi być unikalna."
7 },
8 "area-alt": {
9 "description": "Elementy <area> w graficznych mapach odnośników mają tekst zastępczy.",
10 "help": "Elementy aktywne <area> muszą mieć tekst alternatywny."
11 },
12 "aria-allowed-attr": {
13 "description": "Użyte atrybuty ARIA są dozwolone dla elementu z określoną rolą.",
14 "help": "Elementy mogą używać tylko dozwolonych atrybutów ARIA."
15 },
16 "aria-allowed-role": {
17 "description": "Atrybut role ma odpowiednią wartość dla danego elementu.",
18 "help": "Rola ARIA musi być odpowiednia dla danego elementu."
19 },
20 "aria-braille-equivalent": {
21 "description": "Upewnij się, że aria-braillelabel i aria-brailleroledescription mają odpowiednik niebrajlowski",
22 "help": "Atrybuty aria-braille muszą mieć odpowiednik niebrajlowski."
23 },
24 "aria-command-name": {
25 "description": "Każdy element button, link i menuitem ARIA ma dostępną nazwę.",
26 "help": "Przyciski, łącza, pozycje menu ARIA muszą mieć dostępną nazwę."
27 },
28 "aria-conditional-attr": {
29 "description": "Upewnij się, że atrybuty ARIA są używane zgodnie ze specyfikacją roli elementu.",
30 "help": "Atrybuty ARIA muszą być używane w sposób określony dla roli elementu"
31 },
32 "aria-deprecated-role": {
33 "description": "Upewnij się, że elementy nie używają przestarzałych ról.",
34 "help": "Przestarzałe role ARIA nie mogą być używane."
35 },
36 "aria-dialog-name": {
37 "description": "Każde okno dialogowe ARIA i węzeł alertdialog ma dostępną nazwę.",
38 "help": "Okno dialogowe ARIA i węzły alertdialog muszą mieć dostępną nazwę."
39 },
40 "aria-hidden-body": {
41 "description": "Element body nie ma atrybutu aria-hidden='true'.",
42 "help": "Element body nie może mieć atrybutu aria-hidden='true'."
43 },
44 "aria-hidden-focus": {
45 "description": "Elementy z aria-hidden=true nie mogą obejmować elementów przyjmujących fokus.",
46 "help": "Ukryty element ARIA nie może zawierać elementów przyjmujących fokus."
47 },
48 "aria-input-field-name": {
49 "description": "Każde pole ARIA do wprowadzania danych ma dostępną nazwę.",
50 "help": "Pola ARIA do wprowadzania danych muszą mieć dostępną nazwę."
51 },
52 "aria-meter-name": {
53 "description": "Każdy element ARIA meter (licznik) ma dostępną nazwę.",
54 "help": "Liczniki ARIA (meter) muszą mieć dostępne nazwy."
55 },
56 "aria-progressbar-name": {
57 "description": "Każdy element ARIA progressbar (pasek postępu) ma dostępną nazwę.",
58 "help": "Paski postępu ARIA (progressbar) muszą mieć dostępne nazwy."
59 },
60 "aria-prohibited-attr": {
61 "description": "Upewnij się, że atrybuty ARIA nie są zabronione dla roli elementu.",
62 "help": "Elementy mogą używać tylko dozwolonych atrybutów ARIA."
63 },
64 "aria-required-attr": {
65 "description": "Elementy z rolą ARIA mają wszystkie wymagane atrybuty aria-*",
66 "help": "Wymagane atrybuty ARIA muszą istnieć."
67 },
68 "aria-required-children": {
69 "description": "Elementy z atrybutem ARIA role, które muszą zawierać elementy potomne z wymaganym atrybutem role, zawierają je.",
70 "help": "Niektóre role ARIA muszą obejmować określone dzieci."
71 },
72 "aria-required-parent": {
73 "description": "Elementy z atrybutem ARIA role, które wymagają elementu rodzica z atrybutem role, są zawarte w elementach z takimi rolami.",
74 "help": "Elementy z niektórymi atrybutami role ARIA muszą znajdować się wewnątrz nadrzędnego elementu rodzica z wymaganym atrybutem role."
75 },
76 "aria-roledescription": {
77 "description": "Atrybut aria-roledescription jest używany tylko w elementach, które mają rolę określoną domyślnie lub jawnie.",
78 "help": "Użyj aria-roledescription w elementach o roli semantycznej."
79 },
80 "aria-roles": {
81 "description": "Wartości atrybutu role są poprawne.",
82 "help": "Stosowane role ARIA muszą mieć poprawne wartości."
83 },
84 "aria-text": {
85 "description": "Atrybut role=\"text\" jest używany dla elementów, które nie mają potomków przyjmujących fokus",
86 "help": "Element z atrybutem role=\"text\" nie może mieć potomków przyjmujących fokus."
87 },
88 "aria-toggle-field-name": {
89 "description": "Każdy element ARIA toggle (przełącznik) ma dostępną nazwę.",
90 "help": "Przełączniki ARIA (toggle) muszą mieć dostępną nazwę."
91 },
92 "aria-tooltip-name": {
93 "description": "Każdy element ARIA tooltip (podpowiedź) ma dostępną nazwę.",
94 "help": "Podpowiedzi ARIA (tooltip) muszą mieć dostępną nazwę."
95 },
96 "aria-treeitem-name": {
97 "description": "Każdy element ARIA treeitem (węzeł drzewa) ma dostępną nazwę.",
98 "help": "Węzły drzewa elementów ARIA (treeitem) muszą mieć dostępną nazwę."
99 },
100 "aria-valid-attr-value": {
101 "description": "Wszystkie atrybuty ARIA mają poprawne wartości.",
102 "help": "Atrybuty ARIA muszą mieć poprawne wartości."
103 },
104 "aria-valid-attr": {
105 "description": "Wszystkie atrybuty aria-* mają poprawne nazwy.",
106 "help": "Atrybuty ARIA muszą mieć poprawne nazwy."
107 },
108 "audio-caption": {
109 "description": "Elementy <audio> mają napisy rozszerzone.",
110 "help": "Elementy <audio> muszą mieć ścieżkę z napisami."
111 },
112 "autocomplete-valid": {
113 "description": "Pola formularza, które zbierają dane osobowe, mają poprawne atrybuty autocomplete",
114 "help": "Atrybut autocomplete musi być użyty poprawnie."
115 },
116 "avoid-inline-spacing": {
117 "description": "Odstępy w tekście można regulować za pomocą własnych arkuszy stylów.",
118 "help": "Odstępy w tekście muszą być regulowane za pomocą własnych arkuszy stylów."
119 },
120 "blink": {
121 "description": "Elementy <blink> nie są używane.",
122 "help": "Elementy <blink> są przestarzałe i nie mogą być używane."
123 },
124 "button-name": {
125 "description": "Każdy przycisk ma odróżniającą go dostępną nazwę.",
126 "help": "Przyciski muszą mieć odróżniający je tekst nazwy."
127 },
128 "bypass": {
129 "description": "Każda strona ma co najmniej jeden mechanizm, który pozwala ominąć nawigację i przejść od razu do treści.",
130 "help": "Strona musi mieć środki do ominięcia powtarzających bloków treści."
131 },
132 "color-contrast-enhanced": {
133 "description": "Kontrast między kolorami pierwszego planu i tła spełnia wyższe progi współczynnika kontrastu WCAG 2 AAA.",
134 "help": "Elementy muszą spełniać wyższe progi współczynnika kontrastu kolorów"
135 },
136 "color-contrast": {
137 "description": "Kontrast między kolorami pierwszego planu i tła spełnia progi kontrastu WCAG 2 AA.",
138 "help": "Elementy muszą mieć wystarczający kontrast kolorów."
139 },
140 "css-orientation-lock": {
141 "description": "Treść nie jest przypisana do żadnej konkretnej orientacji wyświetlacza i można ją obsługiwać we wszystkich orientacjach wyświetlacza.",
142 "help": "Zapytania medialne nie są wykorzystywane do blokowania orientacji wyświetlacza."
143 },
144 "definition-list": {
145 "description": "Elementy <dl> mają poprawną strukturę.",
146 "help": "Elementy <dl> mogą bezpośrednio zawierać tylko odpowiednio uporządkowane grupy <dt> i <dd> oraz elementy <script>, <template> lub <div>."
147 },
148 "dlitem": {
149 "description": "Elementy <dt> i <dd> znajdują się bezpośrednio w <dl>.",
150 "help": "Elementy <dt> i <dd> są wewnątrz elementu <dl>."
151 },
152 "document-title": {
153 "description": "Każdy dokument HTML ma niepusty element <title>.",
154 "help": "Dokumenty muszą mieć element <title> pomagający w nawigacji."
155 },
156 "duplicate-id-active": {
157 "description": "Wartość każdego atrybutu id aktywnych elementów jest unikalna.",
158 "help": "ID aktywnych elementów, które otrzymują fokus, muszą być unikalne."
159 },
160 "duplicate-id-aria": {
161 "description": "Każdy atrybut id używany w ARIA i w etykietach jest unikalny.",
162 "help": "Identyfikatory stosowane w ARIA i etykietach muszą być unikalne."
163 },
164 "duplicate-id": {
165 "description": "Wartość każdego atrybutu id jest unikalna.",
166 "help": "Wartość atrybutu id musi być unikalna."
167 },
168 "empty-heading": {
169 "description": "Nagłówki mają odróżniający je tekst.",
170 "help": "Nagłówki nie mogą być puste."
171 },
172 "empty-table-header": {
173 "description": "Upewnij się, że nagłówki tabel mają opisowy tekst.",
174 "help": "Tekst nagłówka tabeli nie może być pusty."
175 },
176 "focus-order-semantics": {
177 "description": "Elementy w porządku otrzymywania fokusu mają odpowiednią rolę.",
178 "help": "Elementy w porządku otrzymywania fokusu muszą mieć rolę odpowiednią dla treści interaktywnych."
179 },
180 "form-field-multiple-labels": {
181 "description": "Żadne pole formularza nie ma wielu etykiet (elementów label).",
182 "help": "Pole formularza nie może mieć wielu elementów label."
183 },
184 "frame-focusable-content": {
185 "description": "Elementy <frame> i <iframe> z treścią przyjmującą fokus nie mają tabindex=-1.",
186 "help": "Ramki z treścią przyjmującą fokus nie mogą mieć tabindex=-1."
187 },
188 "frame-tested": {
189 "description": "Elementy <iframe> i <frame> muszą być testowane ze skryptem axe-core.",
190 "help": "Ramki muszą być testowane ze skryptem axe-core."
191 },
192 "frame-title-unique": {
193 "description": "Elementy <iframe> i <frame> mają unikalny atrybut title.",
194 "help": "Ramki muszą mieć unikalny atrybut title."
195 },
196 "frame-title": {
197 "description": "Elementy <iframe> i <frame> mają niepusty atrybut title.",
198 "help": "Ramki muszą mieć niepusty atrybut title."
199 },
200 "heading-order": {
201 "description": "Kolejność nagłówków jest semantycznie poprawna.",
202 "help": "Poziomy nagłówków powinny wzrastać tylko o jeden."
203 },
204 "hidden-content": {
205 "description": "Na stronie są ukryte treści.",
206 "help": "Ukrytych treści na stronie nie można analizować."
207 },
208 "html-has-lang": {
209 "description": "Każdy dokument HTML ma atrybut lang.",
210 "help": "Element <html> musi mieć atrybut lang."
211 },
212 "html-lang-valid": {
213 "description": "Atrybut lang elementu <html> ma poprawną wartość.",
214 "help": "Element <html> musi mieć poprawną wartość atrybutu lang."
215 },
216 "html-xml-lang-mismatch": {
217 "description": "Element HTML z poprawnym atrybutem lang xml:lang ma ten sam podstawowy język strony.",
218 "help": "Element HTML z lang i xml:lang musi mieć ten sam język podstawowy."
219 },
220 "identical-links-same-purpose": {
221 "description": "Łącza o tej samej dostępnej nazwie służą temu samemu celowi.",
222 "help": "Łącza o tej samej nazwie mają ten sam cel."
223 },
224 "image-alt": {
225 "description": "Elementy <img> mają atrybut alt lub rolę none albo presentation.",
226 "help": "Obrazy muszą mieć tekst alternatywny."
227 },
228 "image-redundant-alt": {
229 "description": "Tekst alternatywny obrazu nie jest powtarzany w tekście.",
230 "help": "Tekst alternatywny obrazów nie powinien być powtarzany w tekście."
231 },
232 "input-button-name": {
233 "description": "Przyciski input type=button mają odróżniający je tekst.",
234 "help": "Przyciski input type=button muszą mieć odróżniający je tekst."
235 },
236 "input-image-alt": {
237 "description": "Elementy <input type=\"image\"> mają tekst alternatywny.",
238 "help": "Przyciski graficzne muszą mieć tekst alternatywny."
239 },
240 "label-content-name-mismatch": {
241 "description": "Elementy oznakowane swoją treścią mają swój widoczny tekst jako część ich dostępnej nazwy",
242 "help": "Elementy muszą mieć swój widoczny tekst jako część ich dostępnej nazwy."
243 },
244 "label-title-only": {
245 "description": "Żaden element formularza nie jest oznaczony wyłącznie za pomocą atrybutu title lub aria-describedby.",
246 "help": "Element formularza powinien mieć widoczną etykietę."
247 },
248 "label": {
249 "description": "Każdy element formularza ma etykietę.",
250 "help": "Element formularza musi mieć etykietę."
251 },
252 "landmark-banner-is-top-level": {
253 "description": "Obszar banner jest obszarem kluczowym najwyższego poziomu.",
254 "help": "Punkt orientacyjny banner nie może być zawarty wewnątrz innego obszaru kluczowego."
255 },
256 "landmark-complementary-is-top-level": {
257 "description": "Obszary aside lub z role=complementary są obszarami kluczowymi najwyższego poziomu.",
258 "help": "Punkt orientacyjny complementary nie może być zawarty wewnątrz innego obszaru kluczowego."
259 },
260 "landmark-contentinfo-is-top-level": {
261 "description": "Obszar kluczowy z role=contentinfo jest obszarem kluczowym najwyższego poziomu.",
262 "help": "Punkt orientacyjny contentinfo nie może być zawarty wewnątrz innego obszaru kluczowego."
263 },
264 "landmark-main-is-top-level": {
265 "description": "Obszar main jest obszarem kluczowym najwyższego poziomu.",
266 "help": "Punkt orientacyjny main nie może być zawarty wewnątrz innego obszaru kluczowego."
267 },
268 "landmark-no-duplicate-banner": {
269 "description": "Dokument ma co najwyżej jeden punkt orientacyjny banner.",
270 "help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego banner."
271 },
272 "landmark-no-duplicate-contentinfo": {
273 "description": "Dokument ma co najwyżej jeden punkt orientacyjny contentinfo.",
274 "help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego contentinfo."
275 },
276 "landmark-no-duplicate-main": {
277 "description": "Dokument ma co najwyżej jeden punkt orientacyjny main.",
278 "help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego main."
279 },
280 "landmark-one-main": {
281 "description": "Dokument ma punkt orientacyjny main.",
282 "help": "Dokument może mieć tylko jeden obszar kluczowy main."
283 },
284 "landmark-unique": {
285 "help": "Punkty orientacyjne są unikalne",
286 "description": "Punkty orientacyjne (obszary kluczowe) mają unikalną rolę lub kombinację roli/etykiety/tytułu (tj. dostępną nazwę)."
287 },
288 "link-in-text-block": {
289 "description": "Łącza można rozróżniać bez opierania się na kolorze.",
290 "help": "Łącza muszą być odróżnialne od sąsiadującego tekstu w sposób, który nie opiera się na kolorze."
291 },
292 "link-name": {
293 "description": "Łącza mają odróżniający je tekst.",
294 "help": "Łącza muszą mieć odróżniający je tekst."
295 },
296 "list": {
297 "description": "Listy mają poprawną strukturę.",
298 "help": "Elementy <ul> i <ol> mogą bezpośrednio zawierać tylko elementy <li>, <script> lub <template>."
299 },
300 "listitem": {
301 "description": "Elementy <li> są używane semantycznie.",
302 "help": " Elementy <li> muszą być zawarte bezpośrednio w <ul> lub <ol>."
303 },
304 "marquee": {
305 "description": "Elementy <marquee> nie są używane.",
306 "help": "Elementy <marquee> są przestarzałe i nie mogą być używane."
307 },
308 "meta-refresh-no-exceptions": {
309 "description": "Upewnij się, że <meta http-equiv=\"refresh\"> nie jest używany do opóźnionego odświeżania",
310 "help": "Nie wolno stosować opóźnionego odświeżania"
311 },
312 "meta-refresh": {
313 "description": "Znacznik <meta http-equiv=\"refresh\"> nie jest używany do opóźnionego odświeżania.",
314 "help": "Opóźnione odświeżanie poniżej 20 godzin nie może być stosowane."
315 },
316 "meta-viewport-large": {
317 "description": "Element <meta name=\"viewport\"> umożliwia znaczne powiększanie.",
318 "help": "Użytkownicy mogą powiększać i skalować tekst do 500%."
319 },
320 "meta-viewport": {
321 "description": "Element <meta name=\"viewport\"> nie wyłącza skalowania i powiększania tekstu.",
322 "help": "Powiększanie i skalowanie nie może być wyłączone."
323 },
324 "nested-interactive": {
325 "description": "Upewnij się, że kontrolki interaktywne nie są zagnieżdżone, ponieważ nie zawsze są ogłaszane przez czytniki ekranu lub mogą powodować problemy technologii wspomagających z fokusem.",
326 "help": "Kontrolki interaktywne nie mogą być zagnieżdżone"
327 },
328 "no-autoplay-audio": {
329 "description": "Elementy <video> lub <audio> nie odtwarzają automatycznie dźwięku przez dłużej niż 3 sekundy bez mechanizmu, który go zatrzymuje lub wycisza.",
330 "help": "Elementy <video> lub <audio> nie odtwarzają dźwięku automatycznie."
331 },
332 "object-alt": {
333 "description": "Elementy <object> mają tekst zastępczy.",
334 "help": "Elementy <object> muszą mieć alternatywę tekstową."
335 },
336 "p-as-heading": {
337 "description": "Pogrubienie, kursywa i rozmiar czcionki nie są używane do stylizacji elementów <p> jako nagłówków.",
338 "help": "Stylizowane elementy <p> nie mogą być używane jako nagłówki."
339 },
340 "page-has-heading-one": {
341 "description": "Strona lub co najmniej jedna z jej ramek, zawiera nagłówek pierwszego poziomu.",
342 "help": "Strona musi zawierać nagłówek poziomu 1."
343 },
344 "presentation-role-conflict": {
345 "description": "Elementy oznaczone jako prezentacyjne nie powinny mieć globalnego ARIA ani tabindex, aby zapewnić, że wszystkie czytniki ekranu je zignorują.",
346 "help": "Upewnij się, że elementy oznaczone jako prezentacyjne są konsekwentnie ignorowane."
347 },
348 "region": {
349 "description": "Cała treść strony jest objęta przez punkty orientacyjne.",
350 "help": "Cała treść strony musi być zawarta w obszarach kluczowych."
351 },
352 "role-img-alt": {
353 "description": "Elementy z [role='img'] mają tekst alternatywny.",
354 "help": "Elementy z [role='img'] muszą mieć tekst alternatywny."
355 },
356 "scope-attr-valid": {
357 "description": "Atrybut scope w tabelach jest stosowany poprawnie.",
358 "help": "Atrybut scope ma poprawną wartość."
359 },
360 "scrollable-region-focusable": {
361 "description": "Elementy, których treść można przewijać, są osiągalne za pomocą klawiatury.",
362 "help": "Obszary przewijane muszą być osiągalne z klawiatury."
363 },
364 "select-name": {
365 "description": "Element select ma dostępną nazwę.",
366 "help": "Element select musi mieć dostępną nazwę."
367 },
368 "server-side-image-map": {
369 "description": "Graficzne mapy odnośników (mapy obrazkowe) obsługiwane po stronie serwera nie są używane.",
370 "help": "Nie wolno używać map odnośników po stronie serwera."
371 },
372 "skip-link": {
373 "description": "Wszystkie łącza pomijania mają cel przyjmujący fokus.",
374 "help": "Cel łącza pomijającego powinien istnieć i przyjmować fokus."
375 },
376 "svg-img-alt": {
377 "description": "Elementy <svg> z rolą img, graphics-document lub graphics-symbol mają dostępny tekst.",
378 "help": "Elementy svg z rolą img muszą mieć tekst alternatywny."
379 },
380 "tabindex": {
381 "description": "Wartości atrybutów tabindex nie są większe niż 0.",
382 "help": "Elementy nie powinny mieć wartości tabindex większej niż zero."
383 },
384 "table-duplicate-name": {
385 "description": "Podpis tabeli (element <caption>) nie może zawierać takiego samego tekstu co atrybut summary.",
386 "help": "Atrybut summary w tabeli ma inny tekst niż element caption."
387 },
388 "table-fake-caption": {
389 "description": "Tabele używają jako podpisu elementu <caption>.",
390 "help": "Komórki danych i nagłówkowe w tabeli danych nie są używane do umieszczania podpisu tabeli."
391 },
392 "target-size": {
393 "description": "Sprawdź, czy cel dotykowy ma wystarczający rozmiar i przestrzeń wokół.",
394 "help": "Wszystkie cele dotykowe muszą mieć rozmiar 24px lub pozostawiać wystarczającą ilość miejsca wokół."
395 },
396 "td-has-header": {
397 "description": "Wszystkie niepuste komórki danych w tabelach danych większych niż 3 na 3 mają jeden lub więcej nagłówków tabeli.",
398 "help": "Każdy niepusty element <td> w dużej tabeli musi mieć powiązany nagłówek tabeli"
399 },
400 "td-headers-attr": {
401 "description": "Każda komórka tabeli używająca atrybutu headers odwołuje się do innej komórki w tej tabeli.",
402 "help": "Wszystkie komórki z atrybutem headers odnoszą się tylko do innych komórek tej samej tabeli."
403 },
404 "th-has-data-cells": {
405 "description": "Wszystkie elementy th i elementy z role=columnheader/rowheader mają komórki danych, które opisują.",
406 "help": "Każdy nagłówek tabeli w tabeli danych musi odnosić się do komórek danych."
407 },
408 "valid-lang": {
409 "description": "Atrybuty lang mają poprawne wartości.",
410 "help": "Atrybuty lang muszą mieć poprawną wartość."
411 },
412 "video-caption": {
413 "description": "Elementy <video> mają napisy rozszerzone.",
414 "help": "Elementy <video> muszą mieć napisy rozszerzone."
415 }
416 },
417 "checks": {
418 "abstractrole": {
419 "pass": "Role abstrakcyjne nie są wykorzystywane.",
420 "fail": {
421 "singular": "Rola abstrakcyjna nie może być użyta bezpośrednio: ${data.values}.",
422 "plural": ": Role abstrakcyjne nie mogą być używane bezpośrednio: ${data.values}."
423 }
424 },
425 "aria-allowed-attr": {
426 "pass": "Atrybuty ARIA są używane poprawnie dla zdefiniowanej roli.",
427 "fail": {
428 "singular": "Atrybut ARIA nie jest dozwolony: ${data.values}.",
429 "plural": ": Atrybuty ARIA nie są dozwolone: ${data.values}."
430 },
431 "incomplete": "Sprawdź, czy nie ma problemu, jeśli atrybut ARIA jest ignorowany w tym elemencie: ${data.values}"
432 },
433 "aria-allowed-role": {
434 "pass": "Rola ARIA jest dozwolona dla danego elementu.",
435 "fail": {
436 "singular": "Rola ARIA ${data.values} nie jest dozwolona dla tego elementu.",
437 "plural": ": Role ARIA ${data.values} nie są dozwolone dla tego elementu."
438 },
439 "incomplete": {
440 "singular": "Rola ARIA ${data.values} musi być usunięta, gdy element jest widoczny, ponieważ nie jest to dozwolone dla elementu.",
441 "plural": ": Role ARIA ${data.values} muszą być usunięte, gdy element jest widoczny, ponieważ nie są one dozwolone dla elementu."
442 }
443 },
444 "aria-busy": {
445 "pass": "Element ma atrybut aria-busy",
446 "fail": "Element używa aria-busy=\"true\" podczas pokazywania ładowania"
447 },
448 "aria-conditional-attr": {
449 "pass": "Atrybut ARIA jest dozwolony",
450 "fail": {
451 "checkbox": "Usuń aria-checked lub ustaw jego wartość na \"${data.checkState}\", aby dopasować ją do rzeczywistego stanu pola wyboru.",
452 "rowSingular": "Ten atrybut jest obsługiwany przez wiersze siatki, ale nie przez ${data.ownerRole}: ${data.invalidAttrs}",
453 "rowPlural": "Te atrybuty są obsługiwane przez wiersze siatki, ale nie przez ${data.ownerRole}: ${data.invalidAttrs}"
454 }
455 },
456 "aria-errormessage": {
457 "pass": "Istnieje aria-errormessage oraz elementy referencyjne widoczne dla czytników ekranowych, które wykorzystują wspieraną technikę aria-errormessage.",
458 "fail": {
459 "singular": "Wartość aria-errormessage ${data.values} musi używać techniki ogłoszenia wiadomości (np. aria-live, aria-describedby, role=alert, etc.).",
460 "plural": "Wartości aria-errormessage ${data.values} muszą używać techniki ogłoszenia wiadomości (np. aria-live, aria-describedby, role=alert, etc.).",
461 "hidden": "Wartość aria-errormessage ${data.values} nie może odwoływać się do ukrytego elementu."
462 },
463 "incomplete": {
464 "singular": "Upewnij się, że wartość aria-errormessage ${data.values} odnosi się do istniejącego elementu.",
465 "plural": "Upewnij się, że wartości aria-errormessage ${data.values} odnoszą się do istniejących elementów.",
466 "idrefs": "Nie można określić, czy na stronie istnieje element aria-errormessage: ${data.values}"
467 }
468 },
469 "aria-hidden-body": {
470 "pass": "Nie ma żadnego atrybutu aria-hidden w elemencie body dokumentu.",
471 "fail": "Atrybut aria-hidden=true nie może być użyty w elemencie body dokumentu."
472 },
473 "aria-level": {
474 "pass": "Wartość aria-level jest poprawna",
475 "incomplete": "Wartości aria-level większe niż 6 nie są obsługiwane we wszystkich kombinacjach czytników ekranu i przeglądarek"
476 },
477 "aria-prohibited-attr": {
478 "pass": "Atrybut ARIA jest dozwolony",
479 "fail": {
480 "hasRolePlural": "Atrybuty ${data.prohibited} nie mogą być używane z rolą \"${data.role}\".",
481 "hasRoleSingular": "Atrybut ${data.prohibited} nie może być użyty z rolą \"${data.role}\".",
482 "noRolePlural": "Atrybuty ${data.prohibited} nie mogą być używane w ${data.nodeName} bez poprawnego atrybutu roli.",
483 "noRoleSingular": "Atrybut ${data.prohibited} nie może być użyty w ${data.nodeName} bez poprawnego atrybutu roli."
484 },
485 "incomplete": {
486 "hasRoleSingular": "Atrybut ${data.prohibited} nie jest dobrze obsługiwany przez rolę \"${data.role}\".",
487 "hasRolePlural": "Atrybuty ${data.prohibited} nie są dobrze obsługiwane przez role \"${data.role}\".",
488 "noRoleSingular": "Atrybut ${data.prohibited} nie jest dobrze obsługiwany przez ${data.nodeName} bez poprawnego atrybutu roli.",
489 "noRolePlural": "Atrybuty ${data.prohibited} nie są dobrze obsługiwane przez ${data.nodeName} bez poprawnego atrybutu roli."
490 }
491 },
492 "aria-required-attr": {
493 "pass": "Wszystkie wymagane atrybuty ARIA istnieją.",
494 "fail": {
495 "singular": "Wymagany atrybut ARIA nie istnieje: ${data.values}.",
496 "plural": "Wymagane atrybuty ARIA nie istnieją: ${data.values}."
497 }
498 },
499 "aria-required-children": {
500 "pass": {
501 "default": "Wymagane dzieci ARIA istnieją."
502 },
503 "fail": {
504 "singular": "Wymagana rola dziecka ARIA nie istnieje: ${data.values}.",
505 "plural": "Wymagane role dzieci ARIA nie istnieją: ${data.values",
506 "unallowed": "Element ma dzieci, które nie są dozwolone: ${data.values}"
507 },
508 "incomplete": {
509 "singular": "Należy dodać oczekiwaną rolę dziecka ARIA: ${data.values}.",
510 "plural": "Należy dodać oczekiwane role dzieci ARIA: ${data.values}."
511 }
512 },
513 "aria-required-parent": {
514 "pass": "Wymagana rola rodzica ARIA istnieje.",
515 "fail": {
516 "singular": "Wymagana rola rodzica ARIA nie istnieje: ${data.values}.",
517 "plural": "Wymagane role rodziców ARIA nie istnieją: ${data.values}."
518 }
519 },
520 "aria-roledescription": {
521 "pass": "Atrybut aria-roledescription jest używany z obsługiwaną rolą semantyczną.",
522 "incomplete": "Sprawdź, czy aria-roledescription jest ogłaszany przez obsługiwane czytniki ekranu.",
523 "fail": "Nadaj temu elementowi rolę, która obsługuje aria-roledescription."
524 },
525 "aria-unsupported-attr": {
526 "pass": "Atrybut ARIA jest obsługiwany.",
527 "fail": "Atrybut ARIA nie jest dostatecznie obsługiwany przez czytniki ekranu i inne technologie wspomagające: ${data.values}."
528 },
529 "aria-valid-attr-value": {
530 "pass": "Wartości atrybutu ARIA są poprawne.",
531 "fail": {
532 "singular": "Niepoprawna wartość atrybutu ARIA: ${data.values}",
533 "plural": "Niepoprawne wartości atrybutu ARIA: ${data.values}"
534 },
535 "incomplete": {
536 "noId": "Identyfikator elementu atrybutu ARIA nie istnieje na stronie: ${data.needsReview}",
537 "noIdShadow": "ID elementu atrybutu ARIA nie istnieje na stronie lub jest potomkiem innego drzewa shadow DOM: ${data.needsReview}",
538 "ariaCurrent": "Wartość atrybutu ARIA jest niepoprawna i będzie traktowana jako \"aria-current=true\": ${data.needsReview}",
539 "idrefs": "Nie można określić, czy atrybut ARIA element ID istnieje na stronie: ${data.needsReview}",
540 "empty": "Wartość atrybutu ARIA jest ignorowana, gdy jest pusty: ${data.needsReview}"
541 }
542 },
543 "aria-valid-attr": {
544 "pass": "Nazwa atrybutu ARIA jest poprawna.",
545 "fail": {
546 "singular": "Niepoprawna nazwa atrybutu ARIA: ${data.values}.",
547 "plural": "Niepoprawne nazwy atrybutów ARIA: ${data.values}."
548 }
549 },
550 "braille-label-equivalent": {
551 "pass": "Atrybut aria-braillelabel jest użyty w elemencie z dostępnym tekstem.",
552 "fail": "Atrybut aria-braillelabel jest użyty w elemencie, który nie ma dostępnego tekstu.",
553 "incomplete": "Nie można wyliczyć dostępnego tekstu."
554 },
555 "braille-roledescription-equivalent": {
556 "pass": "Atrybut aria-brailleroledescription nie jest używany w elemencie, który nie ma dostępnego tekstu.",
557 "fail": {
558 "noRoleDescription": "Atrybut aria-brailleroledescription jest użyty w elemencie bez atrybutu aria-roledescription.",
559 "emptyRoleDescription": "Atrybut aria-brailleroledescription jest użyty w elemencie z pustym atrybutem aria-roledescription."
560 }
561 },
562 "deprecatedrole": {
563 "pass": "Rola ARIA nie jest przestarzała",
564 "fail": "Użyta rola jest przestarzała: ${data}"
565 },
566 "fallbackrole": {
567 "pass": "Użyto tylko jednej wartości roli.",
568 "fail": "Użyj tylko jednej wartości roli, ponieważ role rezerwowe nie są obsługiwane w starszych przeglądarkach.",
569 "incomplete": "Używaj tylko roli 'presentation' lub 'none', ponieważ są one synonimami."
570 },
571 "has-global-aria-attribute": {
572 "pass": {
573 "singular": "Element ma ogólny atrybut ARIA: ${data.values}.",
574 "plural": ": Element ma ogólne atrybuty ARIA: ${data.values}."
575 },
576 "fail": "Element nie ma ogólnego atrybutu ARIA"
577 },
578 "has-widget-role": {
579 "pass": "Element ma rolę widżetu.",
580 "fail": "Element nie ma roli widżetu."
581 },
582 "invalidrole": {
583 "pass": "Rola ARIA jest poprawna.",
584 "fail": {
585 "singular": "Rola musi być jedną z poprawnych ról ARIA: ${data.values}.",
586 "plural": ": Role muszą być jedną z poprawnych ról ARIA: ${data.values}."
587 }
588 },
589 "is-element-focusable": {
590 "pass": "Element przyjmuje fokus.",
591 "fail": "Element nie przyjmuje fokusu."
592 },
593 "no-implicit-explicit-label": {
594 "pass": "Nie ma rozbieżności między label a dostępną nazwą.",
595 "incomplete": "Sprawdź, czy label nie musi być częścią nazwy pola ARIA ${data}."
596 },
597 "unsupportedrole": {
598 "pass": "Rola ARIA jest obsługiwana.",
599 "fail": "Zastosowana rola nie jest szeroko obsługiwana w czytnikach ekranu i technologiach wspomagających: ${data.values}."
600 },
601 "valid-scrollable-semantics": {
602 "pass": "Element w porządku otrzymywania fokusu ma poprawną semantykę.",
603 "fail": "Element w porządku otrzymywania fokusu ma niepoprawną semantykę."
604 },
605 "color-contrast-enhanced": {
606 "pass": "Element ma wystarczający kontrast kolorów ${data.contrastRatio}",
607 "fail": {
608 "default": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} (kolor pierwszego planu: ${data.fgColor}, kolor tła: ${data.bgColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}",
609 "fgOnShadowColor": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} pomiędzy kolorem pierwszego planu a kolorem cienia tekstu (kolor pierwszego planu: ${data.fgColor}, kolor cienia tekstu: ${data.shadowColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}",
610 "shadowOnBgColor": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} pomiędzy kolorem cienia tekstu a kolorem tła (kolor cienia tekstu: ${data.shadowColor}, kolor tła: ${data.bgColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}"
611 },
612 "incomplete": {
613 "default": "Nie można określić współczynnika kontrastu.",
614 "bgImage": "Nie można określić koloru tła elementu, ponieważ element ma obraz tła.",
615 "bgGradient": "Nie można określić koloru tła elementu, ponieważ element ma gradientowe tło.",
616 "imgNode": "Nie można określić koloru tła elementu, ponieważ element zawiera węzeł obrazu.",
617 "bgOverlap": "Nie można określić koloru tła elementu, ponieważ nakłada się na niego inny element.",
618 "fgAlpha": "Nie można określić koloru pierwszego planu elementu z powodu przezroczystości alfa.",
619 "elmPartiallyObscured": "Nie można określić koloru tła elementu, ponieważ jest on częściowo zasłonięty przez inny element.",
620 "elmPartiallyObscuring": "Nie można określić koloru tła elementu, ponieważ częściowo nakłada się on na inne elementy.",
621 "outsideViewport": "Nie można określić koloru tła elementu, ponieważ znajduje się on poza obszarem operacyjnym.",
622 "equalRatio": "Element ma współczynnik kontrastu 1:1 z tłem.",
623 "shortTextContent": "Treść elementu jest zbyt krótka, aby określić, czy jest to rzeczywista treść tekstowa.",
624 "nonBmp": "Treść elementu zawiera tylko znaki nietekstowe.",
625 "pseudoContent": "Nie można określić koloru tła elementu, ponieważ jest to pseudoelement."
626 }
627 },
628 "color-contrast": {
629 "pass": {
630 "default": "Element ma wystarczający kontrast kolorów ${data.contrastRatio}",
631 "hidden": "Element jest ukryty"
632 },
633 "fail": {
634 "default": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} (kolor pierwszego planu: ${data.fgColor}, kolor tła: ${data.bgColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}",
635 "fgOnShadowColor": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} pomiędzy kolorem pierwszego planu a kolorem cienia tekstu (kolor pierwszego planu: ${data.fgColor}, kolor cienia tekstu: ${data.shadowColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}",
636 "shadowOnBgColor": "Element ma niewystarczający kontrast kolorów ${data.contrastRatio} pomiędzy kolorem cienia tekstu a kolorem tła (kolor cienia tekstu: ${data.shadowColor}, kolor tła: ${data.bgColor}, rozmiar czcionki: ${data.fontSize}, waga czcionki: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}"
637 },
638 "incomplete": {
639 "default": "Nie można określić współczynnika kontrastu.",
640 "bgImage": "Nie można określić koloru tła elementu, ponieważ element ma obraz tła.",
641 "bgGradient": "Nie można określić koloru tła elementu, ponieważ element ma gradientowe tło.",
642 "imgNode": "Nie można określić koloru tła elementu, ponieważ element zawiera węzeł obrazu.",
643 "bgOverlap": "Nie można określić koloru tła elementu, ponieważ nakłada się na niego inny element.",
644 "fgAlpha": "Nie można określić koloru pierwszego planu elementu z powodu przezroczystości alfa.",
645 "elmPartiallyObscured": "Nie można określić koloru tła elementu, ponieważ jest on częściowo zasłonięty przez inny element.",
646 "elmPartiallyObscuring": "Nie można określić koloru tła elementu, ponieważ częściowo nakłada się on na inne elementy.",
647 "outsideViewport": "Nie można określić koloru tła elementu, ponieważ znajduje się on poza obszarem operacyjnym.",
648 "equalRatio": "Element ma współczynnik kontrastu 1:1 z tłem.",
649 "shortTextContent": "Treść elementu jest zbyt krótka, aby określić, czy jest to rzeczywista treść tekstowa.",
650 "nonBmp": "Treść elementu zawiera tylko znaki nietekstowe.",
651 "pseudoContent": "Nie można określić koloru tła elementu, ponieważ jest to pseudoelement."
652 }
653 },
654 "link-in-text-block-style": {
655 "pass": "Łącza mogą być odróżnione od sąsiadującego tekstu poprzez wizualną stylizację",
656 "incomplete": {
657 "default": "Sprawdź, czy łącze wymaga stylizacji, aby odróżnić je od sąsiadującego tekstu.",
658 "pseudoContent": "Sprawdź, czy pseudostyl łącza jest wystarczający, aby odróżnić je od sąsiadującego tekstu."
659 },
660 "fail": "Łącze nie ma żadnej stylizacji (np. podkreślenia), która odróżniałaby je od sąsiadującego tekstu"
661 },
662 "link-in-text-block": {
663 "pass": "Łącza można odróżnić od sąsiadującego tekstu w inny sposób niż za pomocą koloru.",
664 "fail": {
665 "fgContrast": "Łącze ma niewystarczający kontrast kolorów ${data.contrastRatio}:1 z sąsiadującym tekstem. (Minimalny kontrast to: ${data.requiredContrastRatio}:1, kolor tekstu łącza: ${data.nodeColor}, kolor sąsiadującego tekstu: ${data.parentColor})",
666 "bgContrast": "Tło łącza ma niewystarczający kontrast kolorów ${data.contrastRatio} (Minimalny kontrast to: ${data.requiredContrastRatio}:1, kolor tła łącza: ${data.nodeBackgroundColor}, sąsiadujący kolor tła: ${data.parentBackgroundColor})"
667 },
668 "incomplete": {
669 "default": "Nie można określić współczynnika kontrastu.",
670 "bgContrast": "Nie można określić współczynnika kontrastu elementu. Sprawdź, czy nie ma odrębnego stylu stanów hover/fokus.",
671 "bgImage": "Nie można określić współczynnika kontrastu elementu ze względu na obraz tła.",
672 "bgGradient": "Nie można określić współczynnika kontrastu elementu ze względu na gradient tła.",
673 "imgNode": "Nie można określić współczynnika kontrastu elementu, ponieważ element zawiera węzeł obrazu.",
674 "bgOverlap": "Nie można określić współczynnika kontrastu elementu ze względu na nakładanie się elementów."
675 }
676 },
677 "autocomplete-appropriate": {
678 "pass": "Wartość autocomplete jest odpowiednia dla tego typu pola formularza.",
679 "fail": "Wartość autocomplete jest niewłaściwa dla tego typu pola formularza."
680 },
681 "autocomplete-valid": {
682 "pass": "Atrybut autocomplete jest sformatowany poprawnie.",
683 "fail": "Atrybut autocomplete jest sformatowany niepoprawnie."
684 },
685 "accesskeys": {
686 "pass": "Wartość atrybutu accesskey jest unikalna.",
687 "fail": "Dokument ma wiele elementów z tym samym klawiszem dostępu."
688 },
689 "focusable-content": {
690 "pass": "Element zawiera elementy przyjmujące fokus.",
691 "fail": "Element powinien przyjmować fokus."
692 },
693 "focusable-disabled": {
694 "pass": "W elemencie nie ma elementów przyjmujących fokus.",
695 "incomplete": "Sprawdź, czy elementy, na których można ustawić fokus, natychmiast otrzymują wskaźnik fokusu",
696 "fail": "Treść z możliwością ustawiania fokusu powinna być wyłączona lub usunięta z DOM."
697 },
698 "focusable-element": {
699 "pass": "Element może przyjmować fokus.",
700 "fail": "Element powinien przyjmować fokus."
701 },
702 "focusable-modal-open": {
703 "pass": "Nie ma elementów przyjmujących fokus, gdy otwarte jest okno modalne.",
704 "incomplete": "Sprawdź, czy elementy, które mogą przyjmować fokus, nie są tabulowane w aktualnym stanie."
705 },
706 "focusable-no-name": {
707 "pass": "Element nie znajduje się w porządku tabulacji lub ma dostępny tekst.",
708 "fail": "Element znajduje się w porządku tabulacji i nie ma dostępnego tekstu.",
709 "incomplete": "Nie można ustalić, czy element ma dostępną nazwę."
710 },
711 "focusable-not-tabbable": {
712 "pass": "Nie ma elementów przyjmujących fokus wewnątrz elementu.",
713 "incomplete": "Sprawdź, czy elementy, na których można ustawić fokus, natychmiast otrzymują wskaźnik fokusu",
714 "fail": "Treść przyjmująca fokus powinna mieć tabindex=-1 lub być usunięta z DOM."
715 },
716 "frame-focusable-content": {
717 "pass": "Element nie ma potomków przyjmujących fokus",
718 "fail": "Element ma elementy potomne przyjmujące fokus",
719 "incomplete": "Nie można ustalić, czy element ma elementy potomne"
720 },
721 "landmark-is-top-level": {
722 "pass": "Punkt orientacyjny ${data.role} jest na najwyższym poziomie.",
723 "fail": "Punkt orientacyjny {data.role} jest wewnątrz innego obszaru kluczowego."
724 },
725 "no-focusable-content": {
726 "pass": "Element nie ma potomków przyjmujących fokus",
727 "fail": {
728 "default": "Element ma elementy potomne przyjmujące fokus",
729 "notHidden": "Użycie ujemnej wartości tabindex elementu wewnątrz interaktywnej kontrolki nie zapobiega ustawianiu na elemencie fokusu przez technologie wspomagające (nawet z 'aria-hidden=true')"
730 },
731 "incomplete": "Nie można ustalić, czy element ma elementy potomne"
732 },
733 "page-has-heading-one": {
734 "pass": "Strona ma co najmniej jeden nagłówek 1. poziomu.",
735 "fail": "Strona musi mieć nagłówek 1. poziomu."
736 },
737 "page-has-main": {
738 "pass": "Dokument ma co najmniej jeden główny punkt orientacyjny.",
739 "fail": "Dokument nie ma głównego punktu orientacyjnego."
740 },
741 "page-no-duplicate-banner": {
742 "pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy banner.",
743 "fail": "W dokumencie jest więcej niż jeden obszar kluczowy banner."
744 },
745 "page-no-duplicate-contentinfo": {
746 "pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy contentinfo.",
747 "fail": "W dokumencie jest więcej niż jeden obszar kluczowy contentinfo."
748 },
749 "page-no-duplicate-main": {
750 "pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy main.",
751 "fail": "W dokumencie jest więcej niż jeden obszar kluczowy main."
752 },
753 "tabindex": {
754 "pass": "Element nie ma wartości tabindex większej niż 0.",
755 "fail": "Element nie ma wartości tabindex większą od 0."
756 },
757 "alt-space-value": {
758 "pass": "Element ma poprawną wartość atrybutu alt.",
759 "fail": "Element ma atrybut alt zawierający tylko znak spacji, który nie przez wszystkie czytniki ekranu jest ignorowany ."
760 },
761 "duplicate-img-label": {
762 "pass": "Element nie powiela tekstu istniejącego w atrybucie alt elementu img.",
763 "fail": "Element powiela tekst istniejący w atrybucie alt elementu img."
764 },
765 "explicit-label": {
766 "pass": "Element formularza ma jawnie określoną label.",
767 "fail": "Element formularza nie ma jawnie określonej label.",
768 "incomplete": "Nie można określić, czy element formularza ma jawnie określoną label."
769 },
770 "help-same-as-label": {
771 "pass": "Tekst pomocy (title lub aria-describedby) nie powiela tekstu etykiety.",
772 "fail": "Tekst pomocy (title lub aria-describedby) jest taki sam jak tekst etykiety."
773 },
774 "hidden-explicit-label": {
775 "pass": "Element formularza ma widoczną jednoznaczną etykietę label.",
776 "fail": "Element formularza ma jednoznaczną etykietę label, która jest ukryta.",
777 "incomplete": "Nie można określić, czy element formularza ma jawną etykietę (label), gdy jest ukryta."
778 },
779 "implicit-label": {
780 "pass": "Element formularza ma dorozumianą etykietę (jest owinięty w label).",
781 "fail": "Element formularza nie ma dorozumianej etykiety (nie jest owinięty w label).",
782 "incomplete": "Nie można określić, czy element formularza ma dorozumianą etykietę (jest owinięty w label)."
783 },
784 "label-content-name-mismatch": {
785 "pass": "Widoczny tekst elementu jest częścią dostępnej nazwy elementu.",
786 "fail": "Widoczny tekst wewnątrz elementu nie jest częścią dostępnej nazwy."
787 },
788 "multiple-label": {
789 "pass": "Pole formularza nie ma wielu label.",
790 "incomplete": "Technologie wspomagające nie obsługują wystarczająco dobrze wielu elementów label. Upewnij się, że pierwsza etykieta zawiera wszystkie niezbędne informacje."
791 },
792 "title-only": {
793 "pass": "Element formularza nie używa wyłącznie atrybutu title jako swojej etykiety.",
794 "fail": "Tylko atrybut title jest używany do wygenerowania etykiety dla elementu formularza."
795 },
796 "landmark-is-unique": {
797 "pass": "Punkty orientacyjne muszą mieć unikalną kombinację roli lub roli etykiety i tytułu (tj. dostępną nazwę).",
798 "fail": "Punkt orientacyjny musi mieć unikalną aria-label, aria-labelledby lub title, aby był rozpoznawalny."
799 },
800 "has-lang": {
801 "pass": "Element <html> ma atrybut lang.",
802 "fail": {
803 "noXHTML": "Atrybut xml:lang nie jest poprawny na stronach HTML, użyj atrybutu lang.",
804 "noLang": "Element <html> nie ma atrybutu lang."
805 }
806 },
807 "valid-lang": {
808 "pass": "Wartość atrybutu lang jest na liście poprawnych kodów języków.",
809 "fail": "Wartości atrybutu lang nie ma na liście poprawnych kodów języków."
810 },
811 "xml-lang-mismatch": {
812 "pass": "Atrybuty lang i xml:lang mają ten sam język podstawowy.",
813 "fail": "Atrybuty lang i xml:lang nie mają tego samego języka podstawowego."
814 },
815 "dlitem": {
816 "pass": "Element listy opisowej ma element nadrzędny dl.",
817 "fail": "Pozycja listy opisowej nie ma elementu nadrzędnego dl."
818 },
819 "listitem": {
820 "pass": "Element listy ma ul, ol lub role=\"list\" jako bezpośredni element rodzicielski.",
821 "fail": {
822 "default": "Element listy nie ma nadrzędnego elementu ul lub ol.",
823 "roleNotValid": "Element listy nie ma nadrzędnego elementu ul, ol, ani nadrzędnego elementu z role=\"list\"."
824 }
825 },
826 "only-dlitems": {
827 "pass": "Element dl ma wewnątrz tylko dozwolone jako bezpośrednie elementy potomne (dzieci) elementy dt lub dd.",
828 "fail": "Element listy ma wewnątrz bezpośrednie elementy dzieci, które nie są dozwolone wewnątrz listy opisowej."
829 },
830 "only-listitems": {
831 "pass": "Element lista ma wewnątrz tylko dozwolone jako bezpośrednie elementy potomne (dzieci) elementy li.",
832 "fail": "Element listy ma bezpośrednie elementy potomne, które nie są dozwolone: ${data.values}"
833 },
834 "structured-dlitems": {
835 "pass": "Gdy elemet dl nie jest pusty, ma zarówno elementy dt, jak i dd.",
836 "fail": "Element nie jest pusty, ale nie ma co najmniej jednego elementu dt, po którym następuje co najmniej jeden element dd."
837 },
838 "caption": {
839 "pass": "Element multimedialny ma ścieżkę z napisami rozszerzonymi.",
840 "incomplete": "Sprawdź, czy istnieją napisy rozszerzone dla tego elementu."
841 },
842 "frame-tested": {
843 "pass": "Ramka iframe została przetestowana z axe-core.",
844 "fail": "Ramka iframe nie mogła być przetestowana z axe-core.",
845 "incomplete": "Nadal wymagane jest przetestowanie ramki iframe z axe-core."
846 },
847 "no-autoplay-audio": {
848 "pass": "Element <video> lub <audio> nie emituje dźwięku przez czas dłuższy niż dozwolony lub posiada mechanizm sterujący.",
849 "fail": "Element <video> lub <audio> emituje dźwięk przez czas dłuższy niż dozwolony i nie posiada mechanizmu sterowania.",
850 "incomplete": "Sprawdź, czy <video> lub <audio> nie emituje dźwięku dłuższej niż przez dozwolony czas lub czy ma mechanizm sterujący."
851 },
852 "css-orientation-lock": {
853 "pass": "Wyświetlacz działa sprawnie, orientacja nie jest blokowana.",
854 "fail": "Zastosowano blokadę orientacji wyświetlacza, w rezultacie wyświetlacz nie działa sprawnie.",
855 "incomplete": "Nie można blokować orientacji wyświetlacza za pomocą ustawień CSS."
856 },
857 "meta-viewport-large": {
858 "pass": "Znacznik <meta> nie ogranicza znacznego powiększenia na urządzeniach przenośnych.",
859 "fail": "Znacznik <meta> znacznik ogranicza powiększanie na urządzeniach przenośnych."
860 },
861 "meta-viewport": {
862 "pass": "Znacznik <meta> nie wyłącza powiększania na urządzeniach przenośnych.",
863 "fail": "${data} w znaczniku <meta> wyłącza powiększanie na urządzeniach przenośnych."
864 },
865 "target-offset": {
866 "pass": "Cel ma wystarczające odsunięcie od swojego najbliższego sąsiada: (${data.closestOffset}px, które powinno wynosić co najmniej ${data.minOffset}px)",
867 "fail": "Cel ma niewystarczające odsunięcie od najbliższego sąsiada: (${data.closestOffset}px, które powinno wynosić co najmniej ${data.minOffset}px)",
868 "incomplete": {
869 "default": "Element z ujemnym tabindeksem ma niewystarczające odsunięcie od najbliższego sąsiada: (${data.closestOffset}px, które powinno wynosić co najmniej${data.minOffset}px). Czy to jest cel?",
870 "nonTabbableNeighbor": "Cel ma niewystarczające odsunięcie od sąsiada z ujemnym tabindeksem: (${data.closestOffset}px, które powinno wynosić co najmniej ${data.minOffset}px). Czy sąsiad jest celem?"
871 }
872 },
873 "target-size": {
874 "pass": {
875 "default": "Kontrolka ma wystarczający rozmiar (${data.width}px na ${data.height}px, który powinnien wynosić co najmniej ${data.minSize}px na ${data.minSize}px)",
876 "obscured": "Kontrolka jest ignorowana, ponieważ jest całkowicie zasłonięta i nie można jej kliknąć."
877 },
878 "fail": {
879 "default": "Cel ma niewystarczający rozmiar (${data.width}px na ${data.height}px, który powinnien wynosić co najmniej ${data.minSize}px na ${data.minSize}px)",
880 "partiallyObscured": "Cel ma niewystarczający rozmiar, ponieważ jest częściowo przesłonięty (najmniejsza przestrzeń to ${data.width}px na ${data.height}px, powinna wynosić ${data.minSize}px na ${data.minSize}px)"
881 },
882 "incomplete": {
883 "default": "Element z ujemnym tabindex ma niewystarczający rozmiar (${data.width}px na ${data.height}px, powinnien wynosić co najmniej ${data.minSize}px na ${data.minSize}px). Czy to jest cel?",
884 "contentOverflow": "Rozmiar elementu nie mógł być dokładnie określony z powodu przepełnienia zawartości",
885 "partiallyObscured": "Element z ujemnym tabindex ma niewystarczający rozmiar, ponieważ jest częściowo przesłonięty (najmniejsza przestrzeń to ${data.width}px na ${data.height}px, powinna wynosić co najmniej ${data.minSize}px na ${data.minSize}px). Czy to jest cel?",
886 "partiallyObscuredNonTabbable": "Cel ma niewystarczający rozmiar, ponieważ jest częściowo przesłonięty przez sąsiada o ujemnym tabindeksie (najmniejsza przestrzeń to ${data.width}px na ${data.height}px, powinna wynosić co najmniej ${data.minSize}px na ${data.minSize}px). Czy sąsiad jest celem?"
887 }
888 },
889 "header-present": {
890 "pass": "Strona ma nagłówek.",
891 "fail": "Strona nie ma nagłówka."
892 },
893 "heading-order": {
894 "pass": "Kolejność nagłówków jest poprawna.",
895 "fail": "Kolejność nagłówków jest niepoprawna.",
896 "incomplete": "Nie można określić poprzedniego nagłówka"
897 },
898 "identical-links-same-purpose": {
899 "pass": "Nie ma żadnych innych łączy o tej samej nazwie, które kierują na inny adres URL.",
900 "incomplete": "Sprawdź, czy łącza mają ten sam cel lub są celowo niejednoznaczne."
901 },
902 "internal-link-present": {
903 "pass": "Znaleziono poprawne łącze pomijające.",
904 "fail": "Nie znaleziono poprawnych łączy pomijających."
905 },
906 "landmark": {
907 "pass": "Strona ma punkt orientacyjny (obszar kluczowy).",
908 "fail": "Strona nie ma żadnego punktu orientacyjnego (obszaru kluczowego)."
909 },
910 "meta-refresh-no-exceptions": {
911 "pass": "Znacznik <meta> nie powoduje natychmiastowego odświeżenia strony",
912 "fail": "Znacznik <meta> tag wymusza czasowe odświeżenie strony"
913 },
914 "meta-refresh": {
915 "pass": "Znacznik <meta> nie odświeża od razu strony.",
916 "fail": "Znacznik <meta> wymusza odświeżenie strony."
917 },
918 "p-as-heading": {
919 "pass": "Elementy <p> nie są stylizowane na nagłówki.",
920 "fail": "Zamiast stylizowanych na nagłówki elementów <p> muszą być użyte nagłówki semantyczne.",
921 "incomplete": "Nie można określić, czy elementy <p> są stylizowane na nagłówki"
922 },
923 "region": {
924 "pass": "Cała treść strony jest zawarta w obszarach kluczowych.",
925 "fail": "Pewna część strony znajduje się poza punktami orientacyjnymi."
926 },
927 "skip-link": {
928 "pass": "Cel łącza pomijajacego istnieje.",
929 "incomplete": "Cel łącza pomijania powinien być widoczny po aktywacji.",
930 "fail": "Nie istnieje cel łącza pomijającego."
931 },
932 "unique-frame-title": {
933 "pass": "Atrybut title elementu jest unikalny.",
934 "fail": "Atrybut title elementu nie jest unikalny."
935 },
936 "duplicate-id-active": {
937 "pass": "W dokumencie nie ma aktywnych elementów z takim samym atrybutem id.",
938 "fail": "W dokumencie są aktywne elementy z tą samą wartością atrybutu id: ${data}."
939 },
940 "duplicate-id-aria": {
941 "pass": "W dokumencie nie ma żadnych elementów, do których odwołuje się ARIA lub <label>, które mają ten sam atrybut id.",
942 "fail": "W dokumencie jest wiele elementów, do których odnosi się ARIA z tym samym atrybutem id: ${data}."
943 },
944 "duplicate-id": {
945 "pass": "W dokumencie nie ma wielu elementów statycznych z takim samym atrybutem id.",
946 "fail": "W dokumencie jest wiele elementów statycznych z takim samym atrybutem id: ${data}."
947 },
948 "aria-label": {
949 "pass": "Atrybut aria-label istnieje i nie jest pusty.",
950 "fail": "Atrybut aria-label nie istnieje lub jest pusty."
951 },
952 "aria-labelledby": {
953 "pass": "Atrybut aria-labelledby oraz elementy, do których się odwołuje, istnieją i są widoczne dla czytników ekranu.",
954 "fail": "Atrybut aria-labelledby nie istnieje albo elementy, do których odwołuje atrybut aria-labelledby, nie istnieją lub są puste.",
955 "incomplete": "Spowoduj, aby istniał element, do którego istnieje odwołanie w atrybucie aria-labelldeby."
956 },
957 "avoid-inline-spacing": {
958 "pass": "Nie określono żadnych stylów wewnętrznych (inline) z '!important', które wpływają na odstępy w tekście.",
959 "fail": {
960 "singular": "Usuń dyrektywę '!important' ze stylu inline ${data.values}, ponieważ nadpisywanie tego nie jest obsługiwane przez większość przeglądarek.",
961 "plural": "Usuń dyrektywy '!important' ze stylów inline ${data.values}, ponieważ nadpisywanie tego nie jest obsługiwane przez większość przeglądarek."
962 }
963 },
964 "button-has-visible-text": {
965 "pass": "Element ma tekst wewnętrzny widoczny dla czytników ekranu.",
966 "fail": "Element nie ma wewnętrznego tekstu, który jest widoczny dla czytników ekranu.",
967 "incomplete": "Nie można określić, czy element ma elementy potomne."
968 },
969 "doc-has-title": {
970 "pass": "Dokument ma niepusty element <title>.",
971 "fail": "Dokument nie ma niepustego elementu <title>."
972 },
973 "exists": {
974 "pass": "Element nie istnieje.",
975 "incomplete": "Element istnieje."
976 },
977 "has-alt": {
978 "pass": "Element ma atrybut alt.",
979 "fail": "Element nie ma atrybutu alt."
980 },
981 "has-visible-text": {
982 "pass": "Element ma tekst, który jest widoczny dla czytników ekranu.",
983 "fail": "Element nie ma tekstu, który jest widoczny dla czytników ekranu.",
984 "incomplete": "Nie można określić, czy element ma elementy dzieci."
985 },
986 "important-letter-spacing": {
987 "pass": "Odstępy między literami (letter-spacing) w atrybucie style nie są ustawione na !important lub spełniają minimum",
988 "fail": "Odstępy między literami w atrybucie style nie mogą używać !important lub muszą mieć ${data.minValue}em (aktualnie: ${data.value}em)"
989 },
990 "important-line-height": {
991 "pass": "Właściwość line-height w atrybucie style nie jest ustawiona na !important lub spełnia minimum.",
992 "fail": "Właściwość line-height w atrybucie style nie może używać !important lub musi mieć ${data.minValue}em (aktualnie: ${data.value}em)."
993 },
994 "important-word-spacing": {
995 "pass": "Odstępy miedzy wyrazami (word-spacing) w atrybucie style nie są ustawione na !important lub spełniają minimum",
996 "fail": "Odstępy miedzy wyrazami (word-spacing) w atrybucie style nie mogą używać !important lub muszą mieć ${data.minValue}em (aktualnie: ${data.value}em)"
997 },
998 "is-on-screen": {
999 "pass": "Element nie jest widoczny.",
1000 "fail": "Element jest widoczny."
1001 },
1002 "non-empty-alt": {
1003 "pass": "Element ma niepusty atrybut alt.",
1004 "fail": {
1005 "noAttr": "Element nie ma atrybutu alt.",
1006 "emptyAttr": "Element ma pusty atrybut alt."
1007 }
1008 },
1009 "non-empty-if-present": {
1010 "pass": {
1011 "default": "Element nie posiada atrybutu bez określonej wartości.",
1012 "has-label": "Element ma atrybuty bez określonej wartości."
1013 },
1014 "fail": "Element ma atrybut wartości, a atrybut wartości jest pusty."
1015 },
1016 "non-empty-placeholder": {
1017 "pass": "Element ma atrybut placeholder.",
1018 "fail": {
1019 "noAttr": "Element nie ma atrybutu placeholder.",
1020 "emptyAttr": "Element ma pusty atrybut placeholder."
1021 }
1022 },
1023 "non-empty-title": {
1024 "pass": "Element ma atrybut title.",
1025 "fail": {
1026 "noAttr": "Element nie ma atrybutu title.",
1027 "emptyAttr": "Element ma pusty atrybut title."
1028 }
1029 },
1030 "non-empty-value": {
1031 "pass": "Element ma atrybut z niepustą wartością.",
1032 "fail": {
1033 "noAttr": "Element nie ma atrybutu z wartością.",
1034 "emptyAttr": "Element ma atrybut z pustą wartością."
1035 }
1036 },
1037 "presentational-role": {
1038 "pass": "Domyślna semantyka elementu została zastąpiona przez role=\"${data.role}\".",
1039 "fail": {
1040 "default": "Domyślna semantyka elementu nie została nadpisana przez role=\"none\" ani role=\"presentation\".",
1041 "globalAria": "Rola elementu nie jest prezentacyjna, ponieważ ma on ogólny atrybut ARIA.",
1042 "focusable": "Rola elementu nie jest prezentacyjna, ponieważ może on przyjmować fokus.",
1043 "both": "Rola elementu nie jest prezentacyjna, ponieważ ma on ogólny atrybut ARIA i może przyjmować fokus.",
1044 "iframe": "Użycie atrybutu \"title\" na elemencie ${data.nodeName} z rolą prezentacyjną zachowuje się niespójnie pomiędzy czytnikami ekranu."
1045 }
1046 },
1047 "role-none": {
1048 "pass": "Domyślna semantyka elementu została zastąpiona przez role=\"none\".",
1049 "fail": "Domyślna semantyka elementu nie została nadpisana przez role=\"none\"."
1050 },
1051 "role-presentation": {
1052 "pass": "Domyślna semantyka elementu została zastąpiona przez role=\"presentation\".",
1053 "fail": "Domyślna semantyka elementu nie została nadpisana przez role=\"presentation\"."
1054 },
1055 "svg-non-empty-title": {
1056 "pass": "Element ma dziecko, które jest tytułem.",
1057 "fail": {
1058 "noTitle": "Element nie ma dziecka, które jest tytułem.",
1059 "emptyTitle": "Element title dziecka jest pusty."
1060 },
1061 "incomplete": "Nie można ustalić, czy element ma dziecko, które jest tytułem."
1062 },
1063 "caption-faked": {
1064 "pass": "Pierwszy wiersz tabeli nie jest używany jako podpis.",
1065 "fail": "Pierwszym elementem potomnym (dzieckiem) w tabeli powinien być caption zamiast komórki tabeli."
1066 },
1067 "html5-scope": {
1068 "pass": "Atrybut scope jest używany tylko w elementach nagłówków tabeli (<th>).",
1069 "fail": "W HTML 5, atrybuty scope mogą być używane tylko w elementach nagłówkowych tabeli (<th>)."
1070 },
1071 "same-caption-summary": {
1072 "pass": "Treści atrybutu summary i elementu <caption> nie są powielane.",
1073 "fail": "Treści atrybutu summary i elementu <caption> są identyczne.",
1074 "incomplete": "Nie można określić, czy element <table> ma caption"
1075 },
1076 "scope-value": {
1077 "pass": "Atrybut scope ma poprawną wartość.",
1078 "fail": "Wartością atrybutu scope może być tylko 'row' lub 'col'."
1079 },
1080 "td-has-header": {
1081 "pass": "Wszystkie niepuste komórki danych mają nagłówki tabeli.",
1082 "fail": "Niektóre niepuste komórki danych nie mają nagłówków tabeli."
1083 },
1084 "td-headers-attr": {
1085 "pass": "Atrybut headers jest używany wyłącznie w odniesieniu do innych komórek w tabeli.",
1086 "incomplete": "Atrybut headers jest pusty.",
1087 "fail": "Atrybut headers nie jest używany wyłącznie w odniesieniu do innych komórek w tabeli."
1088 },
1089 "th-has-data-cells": {
1090 "pass": "Wszystkie komórki nagłówkowe tabeli odnoszą się do komórek danych.",
1091 "fail": "Nie wszystkie komórki nagłówkowe tabeli odnoszą się do komórek danych.",
1092 "incomplete": "Komórki danych tabeli są puste lub nie istnieją."
1093 },
1094 "hidden-content": {
1095 "pass": "Wszystkie treści na stronie zostały przeanalizowane.",
1096 "fail": "Były problemy z analizą treści na tej stronie.",
1097 "incomplete": "Na tej stronie jest ukryta treść, która nie została przeanalizowana. Musisz uruchomić wyświetlanie tej treści, aby ją przeanalizować."
1098 }
1099 },
1100 "failureSummaries": {
1101 "any": {
1102 "failureMessage": "Napraw następujące elementy: {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
1103 },
1104 "none": {
1105 "failureMessage": "Napraw wszystkie poniższe: {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
1106 }
1107 },
1108 "incompleteFallbackMessage": "AXE nie potrafił określić powodu. Czas użyć inspektora elementów!"
1109}
Note: See TracBrowser for help on using the repository browser.