966 lines
49 KiB
JSON
966 lines
49 KiB
JSON
|
{
|
||
|
"lang": "pl",
|
||
|
"rules": {
|
||
|
"accesskeys": {
|
||
|
"description": "Każdy atrybut accessskey jest unikalny.",
|
||
|
"help": "Wartość atrybutu accessskey musi być unikalna."
|
||
|
},
|
||
|
"area-alt": {
|
||
|
"description": "Elementy <area> w graficznych mapach odnośników mają tekst zastępczy.",
|
||
|
"help": "Elementy aktywne <area> muszą mieć tekst alternatywny."
|
||
|
},
|
||
|
"aria-allowed-attr": {
|
||
|
"description": "Użyte atrybuty ARIA są dozwolone dla roli elementu.",
|
||
|
"help": "Elementy mogą używać tylko dozwolonych atrybutów ARIA."
|
||
|
},
|
||
|
"aria-allowed-role": {
|
||
|
"description": "Atrybut role ma odpowiednią wartość dla danego elementu.",
|
||
|
"help": "Rola ARIA musi być odpowiednia dla danego elementu."
|
||
|
},
|
||
|
"aria-command-name": {
|
||
|
"description": "Każdy przycisk, łącze i pozycja menu (menuitem) ARIA ma dostępną nazwę.",
|
||
|
"help": "Polecenia ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-dialog-name": {
|
||
|
"description": "Każde okno dialogowe ARIA i węzeł alertdialog ma dostępną nazwę.",
|
||
|
"help": "Okno dialogowe ARIA i węzły alertdialog muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-hidden-body": {
|
||
|
"description": "Element <body> nie ma atrybutu aria-hidden='true'.",
|
||
|
"help": "Element <body> nie może mieć atrybutu aria-hidden='true'."
|
||
|
},
|
||
|
"aria-hidden-focus": {
|
||
|
"description": "Elementy z aria-hidden nie mogą obejmować elementów przyjmujących fokus.",
|
||
|
"help": "Ukryty element ARIA nie może zawierać elementów przyjmujących fokus."
|
||
|
},
|
||
|
"aria-input-field-name": {
|
||
|
"description": "Każde pole wejściowe ARIA ma dostępną nazwę.",
|
||
|
"help": "Pola wejściowe ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-meter-name": {
|
||
|
"description": "Każdy licznik (meter) oparty na ARIA ma dostępną nazwę.",
|
||
|
"help": "Liczniki (meter) ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-progressbar-name": {
|
||
|
"description": "Każdy pasek postępu (progressbar) ARIA ma dostępną nazwę.",
|
||
|
"help": "Paski postępu (progressbar) ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-required-attr": {
|
||
|
"description": "Elementy z rolami ARIA mają wszystkie wymagane atrybuty ARIA.",
|
||
|
"help": "Wymagane atrybuty ARIA muszą istnieć."
|
||
|
},
|
||
|
"aria-required-children": {
|
||
|
"description": "Elementy z rolą ARIA, które wymagają ról potomnych, zawierają je.",
|
||
|
"help": "Niektóre role ARIA muszą obejmować określone dzieci."
|
||
|
},
|
||
|
"aria-required-parent": {
|
||
|
"description": "Elementy z rolą ARIA, które wymagają ról nadrzędnych, są zawarte w elementach z takimi rolami.",
|
||
|
"help": "Niektóre role ARIA muszą być wewnątrz określonych elementów rodziców."
|
||
|
},
|
||
|
"aria-roledescription": {
|
||
|
"description": "Atrybut aria-roledescription jest używany tylko w elementach, które mają rolę określoną domyślnie lub jawnie.",
|
||
|
"help": "Użyj aria-roledescription w elementach o roli semantycznej."
|
||
|
},
|
||
|
"aria-roles": {
|
||
|
"description": "Wszystkie elementy z atrybutem roli używają prawidłowej wartości tego atrybutu.",
|
||
|
"help": "Stosowane role ARIA muszą być zgodne z obowiązującymi wartościami."
|
||
|
},
|
||
|
"aria-text": {
|
||
|
"description": "Atrybut \"role=text\" jest używany dla elementów, które nie mają potomków przyjmujących fokus",
|
||
|
"help": "\"role=text\" nie powinien mieć potomków przyjmujących fokus."
|
||
|
},
|
||
|
"aria-toggle-field-name": {
|
||
|
"description": "Każdy przełącznik (toggle) ARIA ma dostępną nazwę.",
|
||
|
"help": "Przełączniki (toggle) ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-tooltip-name": {
|
||
|
"description": "Każda podpowiedź (tooltip) ARIA ma dostępną nazwę.",
|
||
|
"help": "Podpowiedzi (tooltip) ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-treeitem-name": {
|
||
|
"description": "Każdy węzeł drzewa elementów (treeitem) ARIA ma dostępną nazwę.",
|
||
|
"help": "Węzły drzewa elementów ARIA muszą mieć dostępną nazwę."
|
||
|
},
|
||
|
"aria-valid-attr-value": {
|
||
|
"description": "Wszystkie atrybuty ARIA mają poprawne wartości.",
|
||
|
"help": "Atrybuty ARIA muszą mieć poprawne wartości."
|
||
|
},
|
||
|
"aria-valid-attr": {
|
||
|
"description": "Atrybuty, które rozpoczynają się od aria-, są poprawnymi atrybutami ARIA.",
|
||
|
"help": "Atrybuty ARIA muszą być mieć poprawne nazwy."
|
||
|
},
|
||
|
"audio-caption": {
|
||
|
"description": "Elementy <audio> mają napisy rozszerzone.",
|
||
|
"help": "Elementy <audio> muszą mieć ścieżkę z napisami."
|
||
|
},
|
||
|
"autocomplete-valid": {
|
||
|
"description": "Atrybut autocomplete jest poprawny i odpowiedni dla pola formularza.",
|
||
|
"help": "Atrybut autocomplete musi być użyty poprawnie."
|
||
|
},
|
||
|
"avoid-inline-spacing": {
|
||
|
"description": "Odstępy w tekście ustawione za pomocą atrybutów stylu mogą być regulowane za pomocą własnych arkuszy stylów.",
|
||
|
"help": "Odstępy w tekście muszą być regulowane za pomocą własnych arkuszy stylów."
|
||
|
},
|
||
|
"blink": {
|
||
|
"description": "Elementy <blink> nie są używane.",
|
||
|
"help": "Elementy <blink> są przestarzałe i nie mogą być używane."
|
||
|
},
|
||
|
"button-name": {
|
||
|
"description": "Przyciski mają odróżniający je tekst.",
|
||
|
"help": "Przyciski muszą mieć odróżniający je tekst."
|
||
|
},
|
||
|
"bypass": {
|
||
|
"description": "Każda strona ma co najmniej jeden mechanizm, który pozwala ominąć nawigację i przejść od razu do treści.",
|
||
|
"help": "Strona musi mieć środki do ominięcia powtarzających się bloków treści."
|
||
|
},
|
||
|
"color-contrast": {
|
||
|
"description": "Kontrast między kolorami pierwszego planu i tła spełnia progi kontrastu WCAG 2 AA.",
|
||
|
"help": "Elementy muszą mieć wystarczający kontrast kolorów."
|
||
|
},
|
||
|
"color-contrast-enhanced": {
|
||
|
"description": "Kontrast między kolorami pierwszego planu i tła spełnia progi kontrastu WCAG 2 AAA.",
|
||
|
"help": "Elementy muszą mieć wystarczający kontrast kolorów."
|
||
|
},
|
||
|
"css-orientation-lock": {
|
||
|
"description": "Treść nie jest przypisana do żadnej konkretnej orientacji wyświetlacza i można ją obsługiwać we wszystkich orientacjach wyświetlacza.",
|
||
|
"help": "Zapytania medialne nie są wykorzystywane do blokowania orientacji wyświetlacza."
|
||
|
},
|
||
|
"definition-list": {
|
||
|
"description": "Elementy <dl> mają poprawną strukturę.",
|
||
|
"help": "Elementy <dl> mogą bezpośrednio zawierać tylko odpowiednio uporządkowane grupy <dt> i <dd> oraz elementy <script>, <template> lub <div>."
|
||
|
},
|
||
|
"dlitem": {
|
||
|
"description": "Elementy <dt> i <dd> znajdują się bezpośrednio w <dl>.",
|
||
|
"help": "Elementy <dt> i <dd> są wewnątrz elementu <dl>."
|
||
|
},
|
||
|
"document-title": {
|
||
|
"description": "Każdy dokument HTML ma niepusty element <title>.",
|
||
|
"help": "Dokumenty muszą mieć element <title> pomagający w nawigacji."
|
||
|
},
|
||
|
"duplicate-id-active": {
|
||
|
"description": "Wartość każdego atrybutu id aktywnych elementów jest unikalna.",
|
||
|
"help": "ID aktywnych elementów muszą być unikalne."
|
||
|
},
|
||
|
"duplicate-id-aria": {
|
||
|
"description": "Każdy atrybut id używany w ARIA i w etykietach jest unikalny.",
|
||
|
"help": "Identyfikatory stosowane w ARIA i etykietach muszą być unikalne."
|
||
|
},
|
||
|
"duplicate-id": {
|
||
|
"description": "Wartość każdego atrybutu id jest unikalna.",
|
||
|
"help": "Wartość atrybutu id musi być unikalna."
|
||
|
},
|
||
|
"empty-heading": {
|
||
|
"description": "Nagłówki mają odróżniający je tekst.",
|
||
|
"help": "Nagłówki nie mogą być puste."
|
||
|
},
|
||
|
"empty-table-header": {
|
||
|
"description": "Upewnij się, że nagłówki tabel mają opisowy tekst.",
|
||
|
"help": "Tekst nagłówka tabeli nie może być pusty."
|
||
|
},
|
||
|
"focus-order-semantics": {
|
||
|
"description": "Elementy w porządku otrzymywania fokusu mają odpowiednią rolę.",
|
||
|
"help": "Elementy w porządku otrzymywania fokusu muszą mieć rolę odpowiednią dla treści interaktywnych."
|
||
|
},
|
||
|
"form-field-multiple-labels": {
|
||
|
"description": "Pole formularza nie ma wielu etykiet (elementów label).",
|
||
|
"help": "Pole formularza nie powinno zawierać wielu elementów label."
|
||
|
},
|
||
|
"frame-focusable-content": {
|
||
|
"description": "Elementy <frame> i <iframe> z treścią przyjmującą fokus nie mają tabindex=-1",
|
||
|
"help": "Ramki z treścią przyjmującą fokus nie mogą mieć tabindex=-1"
|
||
|
},
|
||
|
"frame-tested": {
|
||
|
"description": "Elementy <iframe> i <frame> muszą być testowane ze skryptem axe-core.",
|
||
|
"help": "Ramki muszą być testowane ze skryptem axe-core."
|
||
|
},
|
||
|
"frame-title-unique": {
|
||
|
"description": "Elementy <frame> i <frame> mają unikalny atrybut title.",
|
||
|
"help": "Ramki (frame) muszą mieć unikalny atrybut title."
|
||
|
},
|
||
|
"frame-title": {
|
||
|
"description": "Elementy <iframe> i <frame> mają niepusty atrybut title.",
|
||
|
"help": "Ramki muszą mieć atrybut title."
|
||
|
},
|
||
|
"heading-order": {
|
||
|
"description": "Kolejność nagłówków jest semantycznie poprawna.",
|
||
|
"help": "Poziomy nagłówków powinny wzrastać tylko o jeden."
|
||
|
},
|
||
|
"hidden-content": {
|
||
|
"description": "Informuje użytkowników o ukrytych treściach.",
|
||
|
"help": "Ukrytych treści na stronie nie można analizować."
|
||
|
},
|
||
|
"html-has-lang": {
|
||
|
"description": "Każdy dokument HTML ma atrybut lang.",
|
||
|
"help": "Element <html> musi mieć atrybut lang."
|
||
|
},
|
||
|
"html-lang-valid": {
|
||
|
"description": "Atrybut lang elementu <html> ma poprawną wartość.",
|
||
|
"help": "Element <html> musi mieć poprawną wartość atrybutu lang."
|
||
|
},
|
||
|
"html-xml-lang-mismatch": {
|
||
|
"description": "Element HTML z poprawnym atrybutem lang xml:lang ma ten sam podstawowy język strony.",
|
||
|
"help": "Element HTML z lang i xml:lang musi mieć ten sam język podstawowy."
|
||
|
},
|
||
|
"identical-links-same-purpose": {
|
||
|
"description": "Łącza o tej samej dostępnej nazwie służą temu samemu celowi.",
|
||
|
"help": "Łącza o tej samej nazwie mają ten sam cel."
|
||
|
},
|
||
|
"image-alt": {
|
||
|
"description": "Elementy <img> mają atrybut alt lub rolę none albo presentation.",
|
||
|
"help": "Obrazy muszą mieć tekst alternatywny."
|
||
|
},
|
||
|
"image-redundant-alt": {
|
||
|
"description": "Tekst alternatywny obrazu nie jest powtarzany w tekście.",
|
||
|
"help": "Alternatywny tekst obrazów nie powinien być powtarzany w tekście."
|
||
|
},
|
||
|
"input-button-name": {
|
||
|
"description": "Przyciski input type=button mają odróżniający je tekst.",
|
||
|
"help": "Przyciski input type=button muszą mieć odróżniający je tekst."
|
||
|
},
|
||
|
"input-image-alt": {
|
||
|
"description": "Elementy <input type=\"image\"> mają tekst alternatywny.",
|
||
|
"help": "Przyciski graficzne muszą mieć tekst alternatywny."
|
||
|
},
|
||
|
"label-content-name-mismatch": {
|
||
|
"description": "Elementy oznakowane swoją treścią mają swój widoczny tekst jako część ich dostępnej nazwy",
|
||
|
"help": "Elementy muszą mieć swój widoczny tekst jako część ich dostępnej nazwy."
|
||
|
},
|
||
|
"label-title-only": {
|
||
|
"description": "Żaden element formularza nie jest oznaczony wyłącznie za pomocą atrybutu title lub aria-describedby.",
|
||
|
"help": "Element formularza powinien mieć widoczną etykietę."
|
||
|
},
|
||
|
"label": {
|
||
|
"description": "Każdy element formularza ma etykietę.",
|
||
|
"help": "Element formularza musi mieć etykietę."
|
||
|
},
|
||
|
"landmark-banner-is-top-level": {
|
||
|
"description": "Obszar banner jest obszarem kluczowym najwyższego poziomu.",
|
||
|
"help": "Punkt orientacyjny banner nie może być zawarty wewnątrz innego obszaru kluczowego."
|
||
|
},
|
||
|
"landmark-complementary-is-top-level": {
|
||
|
"description": "Obszar aside lub obszar z role=complementary są obszarami kluczowymi najwyższego poziomu.",
|
||
|
"help": "Punkt orientacyjny complementary nie może być zawarty wewnątrz innego obszaru kluczowego."
|
||
|
},
|
||
|
"landmark-contentinfo-is-top-level": {
|
||
|
"description": "Obszar kluczowy z role=contentinfo jest obszarem kluczowym najwyższego poziomu.",
|
||
|
"help": "Punkt orientacyjny contentinfo nie może być zawarty wewnątrz innego obszaru kluczowego."
|
||
|
},
|
||
|
"landmark-main-is-top-level": {
|
||
|
"description": "Obszar main jest obszarem kluczowym najwyższego poziomu.",
|
||
|
"help": "Punkt orientacyjny main nie może być zawarty wewnątrz innego obszaru kluczowego."
|
||
|
},
|
||
|
"landmark-no-duplicate-banner": {
|
||
|
"description": "Dokument ma co najwyżej jeden punkt orientacyjny banner.",
|
||
|
"help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego banner."
|
||
|
},
|
||
|
"landmark-no-duplicate-contentinfo": {
|
||
|
"description": "Dokument ma co najwyżej jeden punkt orientacyjny contentinfo.",
|
||
|
"help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego contentinfo."
|
||
|
},
|
||
|
"landmark-no-duplicate-main": {
|
||
|
"description": "Dokument ma co najwyżej jeden punkt orientacyjny main.",
|
||
|
"help": "Dokument nie może mieć więcej niż jednego obszaru kluczowego main."
|
||
|
},
|
||
|
"landmark-one-main": {
|
||
|
"description": "Dokument ma punkt orientacyjny main.",
|
||
|
"help": "Dokument może mieć tylko jeden obszar kluczowy main."
|
||
|
},
|
||
|
"landmark-unique": {
|
||
|
"help": "Punkty orientacyjne mają unikalną rolę lub kombinację roli/etykiety/tytułu (tj. dostępną nazwę).",
|
||
|
"description": "Punkty orientacyjne (obszary kluczowe) są unikalne."
|
||
|
},
|
||
|
"link-in-text-block": {
|
||
|
"description": "Łącza można rozróżniać bez opierania się na kolorze.",
|
||
|
"help": "Łącza muszą być odróżnialne od otaczającego je tekstu w sposób, który nie opiera się na kolorze."
|
||
|
},
|
||
|
"link-name": {
|
||
|
"description": "Łącza mają odróżniający je tekst.",
|
||
|
"help": "Łącza muszą mieć odróżniający je tekst."
|
||
|
},
|
||
|
"list": {
|
||
|
"description": "Listy mają poprawną strukturę.",
|
||
|
"help": "Elementy <ul> i <ol> mogą bezpośrednio zawierać tylko elementy <li>, <script> lub <template>."
|
||
|
},
|
||
|
"listitem": {
|
||
|
"description": "Elementy <li> są używane semantycznie.",
|
||
|
"help": " Elementy <li> muszą być zawarte bezpośrednio w <ul> lub <ol>."
|
||
|
},
|
||
|
"marquee": {
|
||
|
"description": "Elementy <marquee> nie są używane.",
|
||
|
"help": "Elementy <marquee> są przestarzałe i nie mogą być używane."
|
||
|
},
|
||
|
"meta-refresh": {
|
||
|
"description": "<meta http-equiv=\"refresh\"> nie jest stosowane.",
|
||
|
"help": "Automatyczne odświeżenie strony nie może być stosowane."
|
||
|
},
|
||
|
"meta-viewport-large": {
|
||
|
"description": "Element <meta name=\"viewport\"> umożliwia znaczne powiększanie.",
|
||
|
"help": "Użytkownicy mogą powiększać i skalować tekst do 500%."
|
||
|
},
|
||
|
"meta-viewport": {
|
||
|
"description": "Element <meta name=\"viewport\"> nie wyłącza skalowania i powiększania tekstu.",
|
||
|
"help": "Powiększanie i skalowanie nie może być wyłączone."
|
||
|
},
|
||
|
"nested-interactive": {
|
||
|
"description": "Zagnieżdżone interaktywne kontrolki nie są ogłaszane przez czytniki ekranu",
|
||
|
"help": "Upewnij się, że kontrolki interaktywne nie są zagnieżdżone"
|
||
|
},
|
||
|
"no-autoplay-audio": {
|
||
|
"description": "Elementy <video> lub <audio> nie odtwarzają automatycznie przez dłużej niż 3 sekundy dźwięku bez mechanizmu, który go zatrzymuje lub wycisza.",
|
||
|
"help": "Elementy <video> lub <audio> nie odtwarzają dźwięku automatycznie."
|
||
|
},
|
||
|
"object-alt": {
|
||
|
"description": "Elementy <object> mają tekst alternatywny.",
|
||
|
"help": "Elementy <object> muszą mieć tekst zastępczy."
|
||
|
},
|
||
|
"p-as-heading": {
|
||
|
"description": "Elementy p nie są stylizowane jako nagłówki.",
|
||
|
"help": "Pogrubienie, kursywa i rozmiar czcionki nie są używane do stylizacji elementów p jako nagłówków."
|
||
|
},
|
||
|
"page-has-heading-one": {
|
||
|
"description": "Strona, lub co najmniej jedna z jej ramek, zawiera nagłówek pierwszego poziomu.",
|
||
|
"help": "Strona musi zawierać nagłówek poziomu 1."
|
||
|
},
|
||
|
"presentation-role-conflict": {
|
||
|
"description": "Elementy z role=none lub role=presentation nie mogą kolidować z innymi rolami.",
|
||
|
"help": "Elementy, które mają role=none lub role=presentation, nie mogą kolidować z innymi rolami."
|
||
|
},
|
||
|
"region": {
|
||
|
"description": "Cała treść strony jest objęta przez punkty orientacyjne.",
|
||
|
"help": "Cała treść strony musi być zawarta w obszarach kluczowych."
|
||
|
},
|
||
|
"role-img-alt": {
|
||
|
"description": "Elementy z [role=\"img\"] mają tekst alternatywny.",
|
||
|
"help": "Elementy z [role=\"img\"] muszą mieć tekst alternatywny."
|
||
|
},
|
||
|
"scope-attr-valid": {
|
||
|
"description": "Atrybut scope w tabelach jest stosowany poprawnie.",
|
||
|
"help": "Atrybut scope ma poprawną wartość."
|
||
|
},
|
||
|
"scrollable-region-focusable": {
|
||
|
"description": "Elementy, których treść można przewijać, są osiągalne za pomocą klawiatury.",
|
||
|
"help": "Obszary przewijane muszą być osiągalne z klawiatury."
|
||
|
},
|
||
|
"select-name": {
|
||
|
"description": "Element select ma dostępną nazwę.",
|
||
|
"help": "Element select musi mieć dostępną nazwę."
|
||
|
},
|
||
|
"server-side-image-map": {
|
||
|
"description": "Graficzne mapy odnośników (mapy obrazkowe) obsługiwane po stronie serwera nie są używane.",
|
||
|
"help": "Nie wolno używać map odnośników po stronie serwera."
|
||
|
},
|
||
|
"skip-link": {
|
||
|
"description": "Wszystkie łącza pomijania mają cel przyjmujący fokus.",
|
||
|
"help": "Cel łącza pomijającego powinien istnieć i przyjmować fokus."
|
||
|
},
|
||
|
"svg-img-alt": {
|
||
|
"description": "Elementy svg z rolami img, graphics-document lub graphics-symbol mają dostępny tekst.",
|
||
|
"help": "Elementy svg z rolą img mają tekst alternatywny."
|
||
|
},
|
||
|
"tabindex": {
|
||
|
"description": "Wartości atrybutów tabindex nie są większe niż 0.",
|
||
|
"help": "Elementy nie powinny mieć wartości tabindex większej niż zero."
|
||
|
},
|
||
|
"table-duplicate-name": {
|
||
|
"description": "Tabele nie mają takiego samego streszczenia (summary) i podpisu (caption).",
|
||
|
"help": "Atrybut summary w tabeli ma inny tekst niż element caption."
|
||
|
},
|
||
|
"table-fake-caption": {
|
||
|
"description": "Tabele używają jako podpisu elementu <caption>.",
|
||
|
"help": "Komórki danych i nagłówkowe w tabeli danych nie są używane do umieszczania podpisów."
|
||
|
},
|
||
|
"td-has-header": {
|
||
|
"description": "Każda niepusta komórka danych w dużej tabeli ma jeden lub więcej nagłówków tabeli.",
|
||
|
"help": "Wszystkie niepuste elementy td w tabelach danych większych niż 3 na 3 mają skojarzony nagłówek tabeli."
|
||
|
},
|
||
|
"td-headers-attr": {
|
||
|
"description": "Każda komórka tabeli używająca atrybutu headers odwołuje się do innej komórki w tej tabeli.",
|
||
|
"help": "Wszystkie komórki z atrybutem headers odnoszą się tylko do innych komórek tej samej tabeli."
|
||
|
},
|
||
|
"th-has-data-cells": {
|
||
|
"description": "Każdy nagłówek tabeli w tabeli danych odnosi się do komórek danych.",
|
||
|
"help": "Wszystkie elementy th i elementy z role=columnheader/rowheader mają komórki danych, które opisują."
|
||
|
},
|
||
|
"valid-lang": {
|
||
|
"description": "Atrybuty lang mają poprawne wartości.",
|
||
|
"help": "Atrybuty lang muszą mieć poprawną wartość."
|
||
|
},
|
||
|
"video-caption": {
|
||
|
"description": "Elementy <video> mają napisy rozszerzone.",
|
||
|
"help": "Elementy <video> muszą mieć napisy rozszerzone."
|
||
|
}
|
||
|
},
|
||
|
"checks": {
|
||
|
"abstractrole": {
|
||
|
"pass": "Role abstrakcyjne nie są wykorzystywane.",
|
||
|
"fail": {
|
||
|
"singular": "Rola abstrakcyjna nie może być użyta bezpośrednio: ${data.values}.",
|
||
|
"plural": ": Role abstrakcyjne nie mogą być używane bezpośrednio: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"aria-allowed-attr": {
|
||
|
"pass": "Atrybuty ARIA są używane poprawnie dla zdefiniowanej roli.",
|
||
|
"fail": {
|
||
|
"singular": "Atrybut ARIA nie jest dozwolony: ${data.values}.",
|
||
|
"plural": ": Atrybuty ARIA nie są dozwolone: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"aria-allowed-role": {
|
||
|
"pass": "Rola ARIA jest dozwolona dla danego elementu.",
|
||
|
"fail": {
|
||
|
"singular": "Rola ARIA ${data.values} nie jest dozwolona dla tego elementu.",
|
||
|
"plural": ": Role ARIA ${data.values} nie są dozwolone dla tego elementu."
|
||
|
},
|
||
|
"incomplete": {
|
||
|
"singular": "Rola ARIA ${data.values} musi być usunięta, gdy element jest widoczny, ponieważ nie jest to dozwolone dla elementu.",
|
||
|
"plural": ": Role ARIA ${data.values} muszą być usunięte, gdy element jest widoczny, ponieważ nie są one dozwolone dla elementu."
|
||
|
}
|
||
|
},
|
||
|
"aria-errormessage": {
|
||
|
"pass": "Istnieje aria-errormessage oraz elementy referencyjne widoczne dla czytników ekranowych, które wykorzystują wspieraną technikę aria-errormessage.",
|
||
|
"fail": {
|
||
|
"singular": "Wartość aria-errormessage `${data.values}` musi używać techniki ogłoszenia wiadomości (np. aria-live, aria-describedby, role=alert, etc.).",
|
||
|
"plural": "Wartości aria-errormessage `${data.values}` muszą używać techniki ogłoszenia wiadomości (np. aria-live, aria-describedby, role=alert, etc.)."
|
||
|
},
|
||
|
"incomplete": {
|
||
|
"singular": "Upewnij się, że wartość aria-errormessage `${data.values}` odnosi się do istniejącego elementu.",
|
||
|
"plural": "Upewnij się, że wartości aria-errormessage `${data.values}` odnoszą się do istniejących elementów."
|
||
|
}
|
||
|
},
|
||
|
"aria-hidden-body": {
|
||
|
"pass": "Nie ma żadnego atrybutu aria-hidden w elemencie <body> dokumentu.",
|
||
|
"fail": "Atrybutu aria-hidden=true nie może być w elemencie <body> dokumentu."
|
||
|
},
|
||
|
"aria-prohibited-attr": {
|
||
|
"pass": "Atrybut ARIA jest dozwolony",
|
||
|
"fail": "Atrybut ARIA nie może być użyty, dodaj atrybut role lub użyj innego elementu: ${data.values}",
|
||
|
"incomplete": "Atrybut ARIA nie jest dobrze obsługiwany w elemencie i zamiast niego zostanie użyta treść tekstowa: ${data.values}"
|
||
|
},
|
||
|
"aria-required-attr": {
|
||
|
"pass": "Wszystkie wymagane atrybuty ARIA istnieją.",
|
||
|
"fail": {
|
||
|
"singular": "Wymagany atrybut ARIA nie istnieje: ${data.values}.",
|
||
|
"plural": "Wymagane atrybuty ARIA nie istnieją: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"aria-required-children": {
|
||
|
"pass": "Wymagane dzieci ARIA istnieją.",
|
||
|
"fail": {
|
||
|
"singular": "Wymagana rola dziecka ARIA nie istnieje: ${data.values}.",
|
||
|
"plural": "Wymagane role dzieci ARIA nie istnieją: ${data.values}."
|
||
|
},
|
||
|
"incomplete": {
|
||
|
"singular": "Należy dodać oczekiwaną rolę dziecka ARIA: ${data.values}.",
|
||
|
"plural": "Należy dodać oczekiwane role dzieci ARIA: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"aria-required-parent": {
|
||
|
"pass": "Wymagana rola rodzica ARIA istnieje.",
|
||
|
"fail": {
|
||
|
"singular": "Wymagana rola rodzica ARIA nie istnieje: ${data.values}.",
|
||
|
"plural": "Wymagane role rodziców ARIA nie istnieją: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"aria-roledescription": {
|
||
|
"pass": "Atrybut aria-roledescription jest używany z obsługiwaną rolą semantyczną.",
|
||
|
"incomplete": "Sprawdź, czy aria-roledescription jest ogłaszany przez obsługiwane czytniki ekranu.",
|
||
|
"fail": "Nadaj temu elementowi rolę, która obsługuje aria-roledescription."
|
||
|
},
|
||
|
"aria-unsupported-attr": {
|
||
|
"pass": "Atrybut ARIA jest obsługiwany.",
|
||
|
"fail": "Atrybut ARIA nie jest dostatecznie obsługiwany przez czytniki ekranu i inne technologie wspomagające: ${data.values}."
|
||
|
},
|
||
|
"aria-valid-attr-value": {
|
||
|
"pass": "Wartości atrybutu ARIA są poprawne.",
|
||
|
"fail": {
|
||
|
"singular": "Niepoprawna wartość atrybutu ARIA: ${data.values}.",
|
||
|
"plural": "Niepoprawne wartości atrybutu ARIA: ${data.values}."
|
||
|
},
|
||
|
"incomplete": {
|
||
|
"noId": "Identyfikator elementu atrybutu ARIA nie istnieje na stronie: ${data.needsReview}.",
|
||
|
"ariaCurrent": "Wartość atrybutu ARIA jest niepoprawna i będzie traktowana jako aria-current=true: ${data.needsReview}."
|
||
|
}
|
||
|
},
|
||
|
"aria-valid-attr": {
|
||
|
"pass": "Nazwa atrybutu ARIA jest poprawna.",
|
||
|
"fail": {
|
||
|
"singular": "Niepoprawna nazwa atrybutu ARIA: ${data.values}.",
|
||
|
"plural": "Niepoprawne nazwy atrybutów ARIA: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"fallbackrole": {
|
||
|
"pass": "Użyto tylko jednej wartości roli.",
|
||
|
"fail": "Użyj tylko jednej wartości roli, ponieważ role rezerwowe nie są obsługiwane w starszych przeglądarkach."
|
||
|
},
|
||
|
"has-global-aria-attribute": {
|
||
|
"pass": {
|
||
|
"singular": "Element ma ogólny atrybut ARIA: ${data.values}.",
|
||
|
"plural": ": Element ma ogólne atrybuty ARIA: ${data.values}."
|
||
|
},
|
||
|
"fail": "Element nie ma ogólnego atrybutu ARIA"
|
||
|
},
|
||
|
"has-widget-role": {
|
||
|
"pass": "Element ma rolę widżetu.",
|
||
|
"fail": "Element nie ma roli widżetu."
|
||
|
},
|
||
|
"invalidrole": {
|
||
|
"pass": "Rola ARIA jest poprawna.",
|
||
|
"fail": {
|
||
|
"singular": "Rola musi być jedną z poprawnych ról ARIA: ${data.values}.",
|
||
|
"plural": ": Role muszą być jedną z poprawnych ról ARIA: ${data.values}."
|
||
|
}
|
||
|
},
|
||
|
"is-element-focusable": {
|
||
|
"pass": "Element przyjmuje fokus.",
|
||
|
"fail": "Element nie przyjmuje fokusu."
|
||
|
},
|
||
|
"no-implicit-explicit-label": {
|
||
|
"pass": "Nie ma rozbieżności między <label> a dostępną nazwą.",
|
||
|
"incomplete": "Sprawdź, czy <label> nie musi być częścią nazwy pola ARIA ${data}."
|
||
|
},
|
||
|
"unsupportedrole": {
|
||
|
"pass": "Rola ARIA jest obsługiwana.",
|
||
|
"fail": "Zastosowana rola nie jest szeroko obsługiwana w czytnikach ekranu i technologiach wspomagających: ${data.values}."
|
||
|
},
|
||
|
"valid-scrollable-semantics": {
|
||
|
"pass": "Element w porządku otrzymywania fokusu ma poprawną semantykę.",
|
||
|
"fail": "Element w porządku otrzymywania fokusu ma niepoprawną semantykę."
|
||
|
},
|
||
|
"color-contrast": {
|
||
|
"pass": "Element ma wystarczający kontrast kolorów ${data.contrastRatio}.",
|
||
|
"fail": "Element ma niewystarczający kontrast kolorów: ${data.contrastRatio} (foreground color: ${data.fgColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}.",
|
||
|
"incomplete": {
|
||
|
"default": "Nie można określić współczynnika kontrastu.",
|
||
|
"bgImage": "Nie można określić koloru tła elementu, ponieważ element ma obraz tła.",
|
||
|
"bgGradient": "Nie można określić koloru tła elementu, ponieważ element ma gradientowe tło.",
|
||
|
"imgNode": "Nie można określić koloru tła elementu, ponieważ element zawiera węzeł obrazu.",
|
||
|
"bgOverlap": "Nie można określić koloru tła elementu, ponieważ nakłada się na niego inny element.",
|
||
|
"fgAlpha": "Nie można określić koloru pierwszego planu elementu z powodu przezroczystości alfa.",
|
||
|
"elmPartiallyObscured": "Nie można określić koloru tła elementu, ponieważ jest on częściowo zasłonięty przez inny element.",
|
||
|
"elmPartiallyObscuring": "Nie można określić koloru tła elementu, ponieważ częściowo nakłada się on na inne elementy.",
|
||
|
"outsideViewport": "Nie można określić koloru tła elementu, ponieważ znajduje się on poza obszarem operacyjnym.",
|
||
|
"equalRatio": "Element ma współczynnik kontrastu 1:1 z tłem.",
|
||
|
"shortTextContent": "Treść elementu jest zbyt krótka, aby określić, czy jest to rzeczywista treść tekstowa.",
|
||
|
"nonBmp": "Treść elementu zawiera tylko znaki nietekstowe.",
|
||
|
"pseudoContent": "Nie można określić koloru tła elementu, ponieważ jest to pseudoelement."
|
||
|
}
|
||
|
},
|
||
|
"color-contrast-enhanced": {
|
||
|
"pass": "Element ma wystarczający kontrast kolorów ${data.contrastRatio}.",
|
||
|
"fail": "Element ma niewystarczający kontrast kolorów: ${data.contrastRatio} (foreground color: ${data.fgColor}, background color: ${data.bgColor}, font size: ${data.fontSize}, font weight: ${data.fontWeight}). Oczekiwany współczynnik kontrastu: ${data.expectedContrastRatio}.",
|
||
|
"incomplete": {
|
||
|
"default": "Nie można określić współczynnika kontrastu.",
|
||
|
"bgImage": "Nie można określić koloru tła elementu, ponieważ element ma obraz tła.",
|
||
|
"bgGradient": "Nie można określić koloru tła elementu, ponieważ element ma gradientowe tło.",
|
||
|
"imgNode": "Nie można określić koloru tła elementu, ponieważ element zawiera węzeł obrazu.",
|
||
|
"bgOverlap": "Nie można określić koloru tła elementu, ponieważ nakłada się na niego inny element.",
|
||
|
"fgAlpha": "Nie można określić koloru pierwszego planu elementu z powodu przezroczystości alfa.",
|
||
|
"elmPartiallyObscured": "Nie można określić koloru tła elementu, ponieważ jest on częściowo zasłonięty przez inny element.",
|
||
|
"elmPartiallyObscuring": "Nie można określić koloru tła elementu, ponieważ częściowo nakłada się on na inne elementy.",
|
||
|
"outsideViewport": "Nie można określić koloru tła elementu, ponieważ znajduje się on poza obszarem operacyjnym.",
|
||
|
"equalRatio": "Element ma współczynnik kontrastu 1:1 z tłem.",
|
||
|
"shortTextContent": "Treść elementu jest zbyt krótka, aby określić, czy jest to rzeczywista treść tekstowa.",
|
||
|
"nonBmp": "Treść elementu zawiera tylko znaki nietekstowe.",
|
||
|
"pseudoContent": "Nie można określić koloru tła elementu, ponieważ jest to pseudoelement."
|
||
|
}
|
||
|
},
|
||
|
"link-in-text-block": {
|
||
|
"pass": "Łącza można odróżnić od otaczającego je tekstu w inny sposób niż za pomocą koloru.",
|
||
|
"fail": "Łącza muszą być odróżnione od otaczającego je tekstu w inny sposób niż za pomocą koloru.",
|
||
|
"incomplete": {
|
||
|
"default": "Nie można określić współczynnika kontrastu.",
|
||
|
"bgContrast": "Nie można określić współczynnika kontrastu elementu. Sprawdź, czy nie ma odrębnego stylu stanów hover/fokus.",
|
||
|
"bgImage": "Nie można określić współczynnika kontrastu elementu ze względu na obraz tła.",
|
||
|
"bgGradient": "Nie można określić współczynnika kontrastu elementu ze względu na gradient tła.",
|
||
|
"imgNode": "Nie można określić współczynnika kontrastu elementu, ponieważ element zawiera węzeł obrazu.",
|
||
|
"bgOverlap": "Nie można określić współczynnika kontrastu elementu ze względu na nakładanie się elementów."
|
||
|
}
|
||
|
},
|
||
|
"autocomplete-appropriate": {
|
||
|
"pass": "Wartość autocomplete jest odpowiednia dla tego typu pola wejściowego.",
|
||
|
"fail": "Wartość autocomplete jest niewłaściwa dla tego typu pola wejściowego."
|
||
|
},
|
||
|
"autocomplete-valid": {
|
||
|
"pass": "Atrybut autocomplete jest sformatowany poprawnie.",
|
||
|
"fail": "Atrybut autocomplete jest sformatowany niepoprawnie."
|
||
|
},
|
||
|
"accesskeys": {
|
||
|
"pass": "Wartość atrybutu accesskey jest unikalna.",
|
||
|
"fail": "Dokument ma wiele elementów z tym samym klawiszem dostępu."
|
||
|
},
|
||
|
"focusable-content": {
|
||
|
"pass": "Element zawiera elementy przyjmujące fokus.",
|
||
|
"fail": "Element powinien przyjmować fokus."
|
||
|
},
|
||
|
"focusable-disabled": {
|
||
|
"pass": "W elemencie nie ma elementów przyjmujących fokus.",
|
||
|
"fail": "Treść z możliwością ustawiania fokusu powinna być wyłączona lub usunięta z DOM."
|
||
|
},
|
||
|
"focusable-element": {
|
||
|
"pass": "Element może przyjmować fokus.",
|
||
|
"fail": "Element powinien przyjmować fokus."
|
||
|
},
|
||
|
"focusable-modal-open": {
|
||
|
"pass": "Nie ma elementów przyjmujących fokus, gdy otwarte jest okno modalne.",
|
||
|
"incomplete": "Sprawdź, czy elementy, które mogą przyjmować fokus, nie są tabulowane w aktualnym stanie."
|
||
|
},
|
||
|
"focusable-no-name": {
|
||
|
"pass": "Element nie znajduje się w porządku tabulacji lub ma dostępny tekst.",
|
||
|
"fail": "Element znajduje się w porządku tabulacji i nie ma dostępnego tekstu.",
|
||
|
"incomplete": "Nie można ustalić, czy element ma dostępną nazwę."
|
||
|
},
|
||
|
"focusable-not-tabbable": {
|
||
|
"pass": "Nie ma elementów przyjmujących fokus wewnątrz elementu.",
|
||
|
"fail": "Treść przyjmująca fokus powinna mieć tabindex=-1 lub być usunięta z DOM."
|
||
|
},
|
||
|
"frame-focusable-content": {
|
||
|
"pass": "Element nie ma potomków przyjmujących fokus",
|
||
|
"fail": "Element ma elementy potomne przyjmujące fokus",
|
||
|
"incomplete": "Nie można ustalić, czy element ma elementy potomne"
|
||
|
},
|
||
|
"landmark-is-top-level": {
|
||
|
"pass": "Punkt orientacyjny ${data.role} jest na najwyższym poziomie.",
|
||
|
"fail": "Punkt orientacyjny {data.role} jest wewnątrz innego obszaru kluczowego."
|
||
|
},
|
||
|
"no-focusable-content": {
|
||
|
"pass": "Element nie ma potomków przyjmujących fokus",
|
||
|
"fail": "Element ma elementy potomne przyjmujące fokus",
|
||
|
"incomplete": "Nie można ustalić, czy element ma elementy potomne"
|
||
|
},
|
||
|
"page-has-heading-one": {
|
||
|
"pass": "Strona ma co najmniej jeden nagłówek 1. poziomu.",
|
||
|
"fail": "Strona musi mieć nagłówek 1. poziomu."
|
||
|
},
|
||
|
"page-has-main": {
|
||
|
"pass": "Dokument ma co najmniej jeden główny punkt orientacyjny.",
|
||
|
"fail": "Dokument nie ma głównego punktu orientacyjnego."
|
||
|
},
|
||
|
"page-no-duplicate-banner": {
|
||
|
"pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy banner.",
|
||
|
"fail": "W dokumencie jest więcej niż jeden obszar kluczowy banner."
|
||
|
},
|
||
|
"page-no-duplicate-contentinfo": {
|
||
|
"pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy contentinfo.",
|
||
|
"fail": "W dokumencie jest więcej niż jeden obszar kluczowy contentinfo."
|
||
|
},
|
||
|
"page-no-duplicate-main": {
|
||
|
"pass": "W dokumencie nie ma więcej niż jeden obszar kluczowy main.",
|
||
|
"fail": "W dokumencie jest więcej niż jeden obszar kluczowy main."
|
||
|
},
|
||
|
"tabindex": {
|
||
|
"pass": "Element nie ma wartości tabindex większej niż 0.",
|
||
|
"fail": "Element nie ma wartości tabindex większą od 0."
|
||
|
},
|
||
|
"alt-space-value": {
|
||
|
"pass": "Element ma poprawną wartość atrybutu alt.",
|
||
|
"fail": "Element ma atrybut alt zawierający tylko znak spacji, który nie przez wszystkie czytniki ekranu jest ignorowany ."
|
||
|
},
|
||
|
"duplicate-img-label": {
|
||
|
"pass": "Element nie powiela tekstu istniejącego w atrybucie alt elementu <img>.",
|
||
|
"fail": "Element powiela tekst istniejący w atrybucie alt elementu <img>."
|
||
|
},
|
||
|
"explicit-label": {
|
||
|
"pass": "Element formularza ma jawnie określoną <label>.",
|
||
|
"fail": "Element formularza nie ma jawnie określonej <label>.",
|
||
|
"incomplete": "Nie można określić, czy element formularza ma jawnie określoną <label>."
|
||
|
},
|
||
|
"help-same-as-label": {
|
||
|
"pass": "Tekst pomocy (title lub aria-describedby) nie powiela tekstu etykiety.",
|
||
|
"fail": "Tekst pomocy (title lub aria-describedby) jest taki sam jak tekst etykiety."
|
||
|
},
|
||
|
"hidden-explicit-label": {
|
||
|
"pass": "Element formularza ma widoczną jednoznaczną <label>.",
|
||
|
"fail": "Element formularza ma jednoznaczną <label>, która jest ukryta.",
|
||
|
"incomplete": "Nie można określić, czy element formularza ma jednoznaczną ukrytą etykietę (<label>)."
|
||
|
},
|
||
|
"implicit-label": {
|
||
|
"pass": "Element formularza ma dorozumianą etykietę (jest owinięty w <label>).",
|
||
|
"fail": "Element formularza nie ma dorozumianej etykiety (nie jest owinięty w <label>).",
|
||
|
"incomplete": "Nie można określić, czy element formularza ma dorozumianą etykietę (jest owinięty w <label>)."
|
||
|
},
|
||
|
"label-content-name-mismatch": {
|
||
|
"pass": "Widoczny tekst elementu jest częścią dostępnej nazwy elementu.",
|
||
|
"fail": "Tekst wewnątrz elementu nie jest częścią dostępnej nazwy."
|
||
|
},
|
||
|
"multiple-label": {
|
||
|
"pass": "Pole formularza nie ma wielu <label>.",
|
||
|
"incomplete": "Technologie wspomagające nie obsługują wystarczająco dobrze wielu elementów <label>. Upewnij się, że pierwsza etykieta zawiera wszystkie niezbędne informacje."
|
||
|
},
|
||
|
"title-only": {
|
||
|
"pass": "Element formularza nie używa wyłącznie atrybutu title jako swojej etykiety.",
|
||
|
"fail": "Tylko atrybut title jest używany do wygenerowania etykiety dla elementu formularza."
|
||
|
},
|
||
|
"landmark-is-unique": {
|
||
|
"pass": "Punkty orientacyjne muszą mieć unikalną kombinację roli lub roli etykiety i tytułu (tj. dostępną nazwę).",
|
||
|
"fail": "Punkt orientacyjny musi mieć unikalną aria-label, aria-labelledby lub title, aby był rozpoznawalny."
|
||
|
},
|
||
|
"has-lang": {
|
||
|
"pass": "Element <html> ma atrybut lang.",
|
||
|
"fail": {
|
||
|
"noXHTML": "Atrybut xml:lang nie jest poprawny na stronach HTML, użyj atrybutu lang.",
|
||
|
"noLang": "Element <html> nie ma atrybutu lang."
|
||
|
}
|
||
|
},
|
||
|
"valid-lang": {
|
||
|
"pass": "Wartość atrybutu lang znajduje się na liście poprawnych kodów języków.",
|
||
|
"fail": "Wartości atrybutu lang nie ma na liście poprawnych kodów języków."
|
||
|
},
|
||
|
"xml-lang-mismatch": {
|
||
|
"pass": "Atrybuty lang i xml:lang mają ten sam język podstawowy.",
|
||
|
"fail": "Atrybuty lang i xml:lang nie mają tego samego języka podstawowego."
|
||
|
},
|
||
|
"dlitem": {
|
||
|
"pass": "Element listy opisowej ma element nadrzędny <dl>.",
|
||
|
"fail": "Pozycja listy opisowej nie ma elementu nadrzędnego <dl>."
|
||
|
},
|
||
|
"listitem": {
|
||
|
"pass": "Element listy ma <ul>, <ol> lub role=\"list\" jako bezpośredni element rodzicielski.",
|
||
|
"fail": {
|
||
|
"default": "Element listy nie ma nadrzędnego elementu <ul> lub <ol>.",
|
||
|
"roleNotValid": "Element listy nie ma nadrzędnego elementu <ul>, <ol>, ani nadrzędnego elementu z role=\"list\"."
|
||
|
}
|
||
|
},
|
||
|
"only-dlitems": {
|
||
|
"pass": "Element <dl> ma wewnątrz tylko dozwolone jako bezpośrednie elementy potomne (dzieci) elementy <dt> lub <dd> .",
|
||
|
"fail": "Element listy ma wewnątrz bezpośrednie elementy dzieci, które nie są dozwolone wewnątrz listy opisowej."
|
||
|
},
|
||
|
"only-listitems": {
|
||
|
"pass": "Element lista ma wewnątrz tylko dozwolone jako bezpośrednie elementy potomne (dzieci) elementy <li>.",
|
||
|
"fail": {
|
||
|
"default": "Element lista ma niedozwolone bezpośrednie elementy potomne (dzieci), poza elementami <li>.",
|
||
|
"roleNotValid": "Element lista ma bezpośrednie elementy potomne (dzieci) z rolą, która nie jest dozwolona: ${data.role}."
|
||
|
}
|
||
|
},
|
||
|
"structured-dlitems": {
|
||
|
"pass": "Gdy elemet <dl> nie jest pusty, ma zarówno elementy <dt>, jak i <dd>.",
|
||
|
"fail": "Element nie jest pusty, ale nie ma co najmniej jednego elementu <dt>, po którym następuje co najmniej jeden element <dd>."
|
||
|
},
|
||
|
"caption": {
|
||
|
"pass": "Element multimedialny ma ścieżkę z napisami rozszerzonymi.",
|
||
|
"incomplete": "Sprawdź, czy istnieją napisy rozszerzone dla tego elementu."
|
||
|
},
|
||
|
"frame-tested": {
|
||
|
"pass": "Ramka iframe została przetestowana z axe-core.",
|
||
|
"fail": "Ramka iframe nie mogła być przetestowana z axe-core.",
|
||
|
"incomplete": "Nadal wymagane jest przetestowanie ramki iframe z axe-core."
|
||
|
},
|
||
|
"no-autoplay-audio": {
|
||
|
"pass": "Element <video> lub <audio> nie emituje dźwięku przez czas dłuższy niż dozwolony lub posiada mechanizm sterujący.",
|
||
|
"fail": "Element <video> lub <audio> emituje dźwięk przez czas dłuższy niż dozwolony i nie posiada mechanizmu sterowania.",
|
||
|
"incomplete": "Sprawdź, czy <video> lub <audio> nie emituje dźwięku dłuższej niż przez dozwolony czas lub czy ma mechanizm sterujący."
|
||
|
},
|
||
|
"css-orientation-lock": {
|
||
|
"pass": "Wyświetlacz działa sprawnie, orientacja nie jest blokowana.",
|
||
|
"fail": "Zastosowano blokadę orientacji wyświetlacza, w rezultacie wyświetlacz nie działa sprawnie.",
|
||
|
"incomplete": "Nie można blokować orientacji wyświetlacza za pomocą ustawień CSS."
|
||
|
},
|
||
|
"meta-viewport-large": {
|
||
|
"pass": "Znacznik <meta> nie ogranicza znacznego powiększenia na urządzeniach przenośnych.",
|
||
|
"fail": "Znacznik <meta> znacznik ogranicza powiększanie na urządzeniach przenośnych."
|
||
|
},
|
||
|
"meta-viewport": {
|
||
|
"pass": "Znacznik <meta> nie wyłącza powiększania na urządzeniach przenośnych.",
|
||
|
"fail": "${data} w znaczniku <meta> wyłącza powiększanie na urządzeniach przenośnych."
|
||
|
},
|
||
|
"header-present": {
|
||
|
"pass": "Strona ma nagłówek.",
|
||
|
"fail": "Strona nie ma nagłówka."
|
||
|
},
|
||
|
"heading-order": {
|
||
|
"pass": "Kolejność nagłówków jest poprawna.",
|
||
|
"fail": "Kolejność nagłówków jest niepoprawna."
|
||
|
},
|
||
|
"identical-links-same-purpose": {
|
||
|
"pass": "Nie ma żadnych innych łączy o tej samej nazwie, które kierują na inny adres URL.",
|
||
|
"incomplete": "Sprawdź, czy łącza mają ten sam cel lub są celowo niejednoznaczne."
|
||
|
},
|
||
|
"internal-link-present": {
|
||
|
"pass": "Znaleziono poprawne łącze pomijające.",
|
||
|
"fail": "Nie znaleziono poprawnych łączy pomijających."
|
||
|
},
|
||
|
"landmark": {
|
||
|
"pass": "Strona ma punkt orientacyjny (obszar kluczowy).",
|
||
|
"fail": "Strona nie ma żadnego punktu orientacyjnego (obszaru kluczowego)."
|
||
|
},
|
||
|
"meta-refresh": {
|
||
|
"pass": "Znacznik <meta> nie odświeża od razu strony.",
|
||
|
"fail": "Znacznik <meta> wymusza odświeżenie strony."
|
||
|
},
|
||
|
"p-as-heading": {
|
||
|
"pass": "Elementy <p> nie są stylizowane na nagłówki.",
|
||
|
"fail": "Zamiast stylizowanych na nagłówki elementów p muszą być używane nagłówki semantyczne."
|
||
|
},
|
||
|
"region": {
|
||
|
"pass": "Cała treść strony jest zawarta w obszarach kluczowych.",
|
||
|
"fail": "Pewna część strony znajduje się poza punktami orientacyjnymi."
|
||
|
},
|
||
|
"skip-link": {
|
||
|
"pass": "Cel łącza pomijajacego istnieje.",
|
||
|
"incomplete": "Cel łącza pomijania powinien być widoczny po aktywacji.",
|
||
|
"fail": "Nie istnieje cel łącza pomijającego."
|
||
|
},
|
||
|
"unique-frame-title": {
|
||
|
"pass": "Atrybut title elementu jest unikalny.",
|
||
|
"fail": "Atrybut title elementu nie jest unikalny."
|
||
|
},
|
||
|
"duplicate-id-active": {
|
||
|
"pass": "W dokumencie nie ma aktywnych elementów z takim samym atrybutem id.",
|
||
|
"fail": "W dokumencie są aktywne elementy z tą samą wartością atrybutu id: ${data}."
|
||
|
},
|
||
|
"duplicate-id-aria": {
|
||
|
"pass": "W dokumencie nie ma żadnych elementów, do których odwołuje się ARIA lub <label>, które mają ten sam atrybut id.",
|
||
|
"fail": "W dokumencie jest wiele elementów, do których odnosi się ARIA z tym samym atrybutem id: ${data}."
|
||
|
},
|
||
|
"duplicate-id": {
|
||
|
"pass": "W dokumencie nie ma wielu elementów statycznych z takim samym atrybutem id.",
|
||
|
"fail": "W dokumencie jest wiele elementów statycznych z takim samym atrybutem id: ${data}."
|
||
|
},
|
||
|
"aria-label": {
|
||
|
"pass": "Atrybut aria-label istnieje i nie jest pusty.",
|
||
|
"fail": "Atrybut aria-label nie istnieje lub jest pusty."
|
||
|
},
|
||
|
"aria-labelledby": {
|
||
|
"pass": "Atrybut aria-labelledby oraz elementy, do których się odwołuje, istnieją i są widoczne dla czytników ekranu.",
|
||
|
"fail": "Atrybut aria-labelledby nie istnieje albo elementy, do których odwołuje atrybut aria-labelledby, nie istnieją lub są puste.",
|
||
|
"incomplete": "Spowoduj, aby istniał element, do którego istnieje odwołanie w atrybucie aria-labelldeby."
|
||
|
},
|
||
|
"avoid-inline-spacing": {
|
||
|
"pass": "Nie określono żadnych stylów inline z '!important', które wpływają na odstępy w tekście.",
|
||
|
"fail": {
|
||
|
"singular": "Usuń dyrektywę '!important' ze stylu inline ${data.values}, ponieważ nadpisywanie tego nie jest obsługiwane przez większość przeglądarek.",
|
||
|
"plural": "Usuń dyrektywy '!important' ze stylów inline ${data.values}, ponieważ nadpisywanie tego nie jest obsługiwane przez większość przeglądarek."
|
||
|
}
|
||
|
},
|
||
|
"button-has-visible-text": {
|
||
|
"pass": "Element ma tekst wewnętrzny widoczny dla czytników ekranu.",
|
||
|
"fail": "Element nie ma wewnętrznego tekstu, który jest widoczny dla czytników ekranu.",
|
||
|
"incomplete": "Nie można określić, czy element ma elementy dzieci."
|
||
|
},
|
||
|
"doc-has-title": {
|
||
|
"pass": "Dokument ma niepusty element <title>.",
|
||
|
"fail": "Dokument nie ma niepustego elementu <title>."
|
||
|
},
|
||
|
"exists": {
|
||
|
"pass": "Element nie istnieje.",
|
||
|
"incomplete": "Element istnieje."
|
||
|
},
|
||
|
"has-alt": {
|
||
|
"pass": "Element ma atrybut alt.",
|
||
|
"fail": "Element nie ma atrybutu alt."
|
||
|
},
|
||
|
"has-visible-text": {
|
||
|
"pass": "Element ma tekst, który jest widoczny dla czytników ekranu.",
|
||
|
"fail": "Element nie ma tekstu, który jest widoczny dla czytników ekranu.",
|
||
|
"incomplete": "Nie można określić, czy element ma elementy dzieci."
|
||
|
},
|
||
|
"is-on-screen": {
|
||
|
"pass": "Element nie jest widoczny.",
|
||
|
"fail": "Element jest widoczny."
|
||
|
},
|
||
|
"non-empty-alt": {
|
||
|
"pass": "Element ma niepusty atrybut alt.",
|
||
|
"fail": {
|
||
|
"noAttr": "Element nie ma atrybutu alt.",
|
||
|
"emptyAttr": "Element ma pusty atrybut alt."
|
||
|
}
|
||
|
},
|
||
|
"non-empty-if-present": {
|
||
|
"pass": {
|
||
|
"default": "Element nie posiada atrybutu bez określonej wartości.",
|
||
|
"has-label": "Element ma atrybuty bez określonej wartości."
|
||
|
},
|
||
|
"fail": "Element ma atrybut wartości, a atrybut wartości jest pusty."
|
||
|
},
|
||
|
"non-empty-placeholder": {
|
||
|
"pass": "Element ma atrybut placeholder.",
|
||
|
"fail": {
|
||
|
"noAttr": "Element nie ma atrybutu placeholder.",
|
||
|
"emptyAttr": "Element ma pusty atrybut placeholder."
|
||
|
}
|
||
|
},
|
||
|
"non-empty-title": {
|
||
|
"pass": "Element ma atrybut title.",
|
||
|
"fail": {
|
||
|
"noAttr": "Element nie ma atrybutu title.",
|
||
|
"emptyAttr": "Element ma pusty atrybut title."
|
||
|
}
|
||
|
},
|
||
|
"non-empty-value": {
|
||
|
"pass": "Element ma atrybut z niepustą wartością.",
|
||
|
"fail": {
|
||
|
"noAttr": "Element nie ma atrybutu z wartością.",
|
||
|
"emptyAttr": "Element ma atrybut z pustą wartością."
|
||
|
}
|
||
|
},
|
||
|
"presentational-role": {
|
||
|
"pass": "Domyślna semantyka elementu została zastąpiona przez role=\"${data.role}\".",
|
||
|
"fail": {
|
||
|
"default": "Domyślna semantyka elementu nie została nadpisana przez role=\"none\" ani role=\"presentation\".",
|
||
|
"globalAria": "Rola elementu nie jest prezentacyjna, ponieważ ma on ogólny atrybut ARIA.",
|
||
|
"focusable": "Rola elementu nie jest prezentacyjna, ponieważ może on przyjmować fokus.",
|
||
|
"both": "Rola elementu nie jest prezentacyjna, ponieważ ma on ogólny atrybut ARIA i może przyjmować fokus."
|
||
|
}
|
||
|
},
|
||
|
"role-none": {
|
||
|
"pass": "Domyślna semantyka elementu została zastąpiona przez role=\"none\".",
|
||
|
"fail": "Domyślna semantyka elementu nie została nadpisana przez role=\"none\"."
|
||
|
},
|
||
|
"role-presentation": {
|
||
|
"pass": "Domyślna semantyka elementu została zastąpiona przez role=\"presentation\".",
|
||
|
"fail": "Domyślna semantyka elementu nie została nadpisana przez role=\"presentation\"."
|
||
|
},
|
||
|
"svg-non-empty-title": {
|
||
|
"pass": "Element ma dziecko, które jest tytułem.",
|
||
|
"fail": {
|
||
|
"noTitle": "Element nie ma dziecka, które jest tytułem.",
|
||
|
"emptyTitle": "Tytuł elementu dziecka jest pusty."
|
||
|
},
|
||
|
"incomplete": "Nie można ustalić, czy element ma dziecko, które jest tytułem."
|
||
|
},
|
||
|
"caption-faked": {
|
||
|
"pass": "Pierwszy wiersz tabeli nie jest używany jako podpis.",
|
||
|
"fail": "Pierwszym elementem potomnym (dzieckiem) w tabeli powinien być caption zamiast komórki tabeli."
|
||
|
},
|
||
|
"html5-scope": {
|
||
|
"pass": "Atrybut scope jest używany tylko w elementach nagłówków tabeli (<th>).",
|
||
|
"fail": "W HTML 5, atrybuty scope mogą być używane tylko w elementach nagłówkowych tabeli (<th>)."
|
||
|
},
|
||
|
"same-caption-summary": {
|
||
|
"pass": "Treści atrybutu summary i elementu <caption> nie są powielane.",
|
||
|
"fail": "Treści atrybutu summary i elementu <caption> są identyczne."
|
||
|
},
|
||
|
"scope-value": {
|
||
|
"pass": "Atrybut scope ma poprawną wartość.",
|
||
|
"fail": "Wartością atrybutu scope może być tylko 'row' lub 'col'."
|
||
|
},
|
||
|
"td-has-header": {
|
||
|
"pass": "Wszystkie niepuste komórki danych mają nagłówki tabeli.",
|
||
|
"fail": "Niektóre niepuste komórki danych nie mają nagłówków tabeli."
|
||
|
},
|
||
|
"td-headers-attr": {
|
||
|
"pass": "Atrybut headers jest używany wyłącznie w odniesieniu do innych komórek w tabeli.",
|
||
|
"incomplete": "Atrybut headers jest pusty.",
|
||
|
"fail": "Atrybut headers nie jest używany wyłącznie w odniesieniu do innych komórek w tabeli."
|
||
|
},
|
||
|
"th-has-data-cells": {
|
||
|
"pass": "Wszystkie komórki nagłówkowe tabeli odnoszą się do komórek danych.",
|
||
|
"fail": "Nie wszystkie komórki nagłówkowe tabeli odnoszą się do komórek danych.",
|
||
|
"incomplete": "Komórki danych tabeli są puste lub nie istnieją."
|
||
|
},
|
||
|
"hidden-content": {
|
||
|
"pass": "Wszystkie treści na stronie zostały przeanalizowane.",
|
||
|
"fail": "Były problemy z analizą treści na tej stronie.",
|
||
|
"incomplete": "Na tej stronie jest ukryta treść, która nie została przeanalizowana. Musisz uruchomić wyświetlanie tej treści, aby ją przeanalizować."
|
||
|
}
|
||
|
},
|
||
|
"failureSummaries": {
|
||
|
"any": {
|
||
|
"failureMessage": "Napraw następujące elementy: {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
|
||
|
},
|
||
|
"none": {
|
||
|
"failureMessage": "Napraw wszystkie poniższe: {{~it:value}}\n {{=value.split('\\n').join('\\n ')}}{{~}}"
|
||
|
}
|
||
|
},
|
||
|
"incompleteFallbackMessage": "AXE nie potrafił określić powodu. Czas użyć inspektora elementów!"
|
||
|
}
|