Deklaracja języka strony: jedna linijka, duża różnica
Czego wymaga kryterium
Kryterium 3.1.1 wymaga, aby język strony był określony w kodzie. Kryterium 3.1.2 wymaga oznaczenia fragmentów w innym języku.
Co się dzieje bez tego
Czytnik ekranu wybiera syntezator mowy na podstawie deklaracji języka. Gdy jej brak, używa ustawienia domyślnego, zwykle angielskiego. Polski tekst czytany angielskim syntezatorem jest niezrozumiały. To jedna linijka kodu, a jej brak potrafi wyłączyć z korzystania z serwisu całą grupę użytkowników.
Jak to zrobić
<html lang="pl">
Dla fragmentów w innym języku:
<p>Nasze hasło to <span lang="en">think different</span>.</p>
Na co uważać
- Deklaracja musi być na każdej podstronie, nie tylko na głównej. Przy generatorach stron zdarza się, że szablon podstrony gubi ten atrybut.
- Wartość ma być kodem języka, nie nazwą. Poprawnie jest lang="pl", a nie lang="polski".
- Jeżeli prowadzisz wersje językowe, każda musi mieć własną deklarację. Wersja angielska z lang="pl" jest równie błędna jak brak deklaracji.
- Nazwy własne i nazwy produktów nie wymagają oznaczania jako obcojęzyczne.