Poziom
AA
Od wersji
WCAG 2.1
Pozycje
29 / 193
/ Kryterium WCAG

1.4.12 Odstępy w tekście

Gdy czytelnik zwiększy odstępy między wierszami, akapitami, literami i wyrazami, żaden tekst nie może zostać ucięty ani nachodzić na inny.

/ Czego wymaga

Części czytelników, w tym wielu osobom z dysleksją lub słabym wzrokiem, czyta się znacznie łatwiej przy większych odstępach między wierszami, wyrazami i literami. Ustawiają je sami: rozszerzeniem przeglądarki, skryptozakładką albo własnym arkuszem stylów. Strona nie musi tak wyglądać domyślnie. Musi działać, gdy ktoś to zrobi: bez uciętych zdań, bez tekstu wchodzącego na następny blok i bez przycisków, z których zniknęła etykieta.

Kryterium podaje cztery wartości i wymaga, by ustawienie ich wszystkich, bez zmiany czegokolwiek innego, nie powodowało utraty treści ani funkcjonalności: wysokość linii co najmniej 1,5 rozmiaru czcionki, odstęp po akapicie co najmniej 2 razy rozmiar czcionki, odstęp między literami co najmniej 0,12 i odstęp między wyrazami co najmniej 0,16 rozmiaru czcionki. Obejmuje treść zapisaną w językach znaczników obsługujących te właściwości, więc obrazy tekstu są poza nim, a pismo, które nie korzysta z którejś właściwości, testuje się bez niej.

/ Jak strony go nie spełniają

  • Kontener ma stałą wysokość i overflow: hidden, więc większa wysokość linii wypycha ostatnie wiersze poza widoczny obszar.
  • Przyciski, karty lub pozycje nawigacji mają stałą wysokość albo szerokość i white-space: nowrap, a szersze odstępy między literami ucinają ich etykiety.
  • Tekst wylewa się z pola o stałej wysokości i nachodzi na treść poniżej.
  • Nagłówki lub teksty kafelków są skracane przez text-overflow: ellipsis albo ograniczenie liczby wierszy, a odstępy ukrywają słowa, które wcześniej były widoczne.
  • Tekst jest pozycjonowany absolutnie na tle w kształcie, który nie rośnie razem z nim.

/ Jak sprawdzić samodzielnie

  1. Zastosuj cztery wartości skryptozakładką lub rozszerzeniem do odstępów w tekście albo wklej regułę w narzędziach deweloperskich: line-height: 1.5, letter-spacing: 0.12em, word-spacing: 0.16em dla wszystkich elementów i margin-bottom: 2em dla akapitów, każdą z flagą important.
  2. Przejdź stronę i porównaj ją z oryginałem: szukaj uciętych wierszy, nachodzącego na siebie tekstu, etykiet, które nie mieszczą się już w przyciskach, i treści, która zniknęła.
  3. Zwróć uwagę na komponenty o ciasnych polach: nawigację, karty, przyciski, kafelki, plakietki, etykiety formularzy, komórki tabel i banery.
  4. Powtórz test w wąskim oknie, bo pola, które na komputerze mają zapas miejsca, na telefonie często go nie mają.

/ Jak to naprawić

  • Zamień height na min-height w każdym elemencie zawierającym tekst, a rozmiar przycisków ustalaj przez padding zamiast stałej wysokości.
  • Usuń white-space: nowrap tam, gdzie tekst może się zawijać, i pozwól elementom flex i grid rosnąć razem z treścią.
  • Nie używaj overflow: hidden do porządkowania pól z tekstem. Tam, gdzie skracanie jest zamierzone, daj czytelnikowi sposób dotarcia do pełnego tekstu.
  • Rozmiary zależne od tekstu podawaj w em lub rem, żeby pola skalowały się razem z czcionką.
  • Trzymaj tekst w normalnym przepływie, a nie pozycjonowany absolutnie w polu o stałym rozmiarze.

/ Co sprawdza nasz skaner

Skan na wyrenderowanej stronie zapisuje, które z maksymalnie 400 widocznych elementów z tekstem są ucięte, po czym wstrzykuje arkusz stylów z wysokością linii 1.5, odstępem liter 0.12em, odstępem wyrazów 0.16em i dolnym marginesem 2em dla akapitów, pozycji list i nagłówków. Mierzy ponownie, usuwa arkusz i zgłasza tylko te pola, które zostały ucięte dopiero teraz. Tekstu, który wylewa się poza pole i nachodzi na sąsiadów, nie wykrywa.

/ Kto je łamie, według naszych pomiarów

Zmierzone podmioty łamiące to kryterium, najwięcej wystąpień na górze
PodmiotSektorWystąpieniaWynik
Politechnika Śląskaeducation · PL192
Poznańcity · PL181
Gdańskcity · PL142
Bydgoszczcity · PL127
Wrocławcity · PL102
Uniwersytet Marii Curie-Skłodowskiejeducation · PL99
Uniwersytet Warszawskieducation · PL94
Gdyniacity · PL57
Politechnika Gdańskaeducation · PL522
King Countygovernment · US415
Universität Hamburgeducation · DE436
Warszawacity · PL420
Bundestaggovernment · DE317
State of Washingtongovernment · US39
Lublincity · PL217
Stuttgartcity · DE26
Uniwersytet Mikołaja Kopernikaeducation · PL26
Bundesnetzagenturgovernment · DE19
Główny Urząd Statystycznygovernment · PL117
Las Vegascity · US18
Muzeum Narodowe w Warszawieculture · PL111
Polski Instytut Sztuki Filmowejculture · PL17
RWTH Aacheneducation · DE119
Radomcity · PL12
Szczecincity · PL12
Teatr Wielki Opera Narodowaculture · PL13
Technische Universität Müncheneducation · DE114
Uniwersytet im. Adama Mickiewiczaeducation · PL112
Warszawski Uniwersytet Medycznyeducation · PL113

Jedna strona na podmiot, mierzona automatycznie w tygodniowym cyklu. Jeśli podmiot coś naprawił od ostatniego pomiaru, zmiana będzie widoczna przy następnym, a każdy podmiot może odpowiedzieć na swojej stronie.

/ Pytania o to kryterium

Czy muszę ustawić line-height 1.5 na swojej stronie?

Nie. Kryterium 1.4.12 nie narzuca sposobu projektowania strony. Wymaga, by nic nie ginęło, gdy czytelnik sam zastosuje cztery wartości odstępów. Projekt z ciaśniejszymi odstępami jest zgodny, o ile taką zmianę wytrzymuje. Hojne odstępy domyślne poprawiają czytelność, ale to nie one są przedmiotem tego kryterium.

Jak przetestować odstępy w tekście?

Zastosuj wszystkie cztery wartości naraz i obejrzyj wynik. Najszybciej zrobisz to skryptozakładką lub rozszerzeniem do odstępów w tekście; ręcznie wystarczy reguła w narzędziach deweloperskich z line-height 1.5, letter-spacing 0.12em, word-spacing 0.16em i marginesem akapitu 2em, wszystkie z flagą important. Potem sprawdź każdy komponent pod kątem uciętego lub nachodzącego na siebie tekstu.

Jakie są cztery wartości odstępów w WCAG?

Wysokość linii co najmniej 1,5 rozmiaru czcionki, odstęp po akapicie co najmniej 2 razy rozmiar czcionki, odstęp między literami co najmniej 0,12 rozmiaru czcionki i odstęp między wyrazami co najmniej 0,16 rozmiaru czcionki. Stosuje się je razem, bez zmiany żadnego innego stylu, a strona musi nadal pokazywać całą treść i zachować wszystkie funkcje.