Zrozumiałość · Poziom A

3.3.2 Etykiety lub instrukcje

Pola formularza muszą mieć jasne etykiety albo instrukcje, które zapobiegają dezorientacji i pomagają poprawnie uzupełnić dane.

Krótko

Użytkownik musi wiedzieć, co ma wpisać lub wybrać w formularzu, zanim popełni błąd.

Problem w praktyce

Formularz ma pola bez etykiet, same placeholdery, niejasne instrukcje albo wymagany format danych, którego użytkownik musi się domyślać. Użytkownik nie wie, co wpisać, jaki format jest poprawny ani które pola są wymagane.

To kryterium dotyczy informacji potrzebnych przed wpisaniem danych. Nie dotyczy jeszcze błędów po walidacji, sugestii naprawy błędów ani technicznego powiązania etykiety z polem.

Kogo to dotyczy

  • Osób niewidomych korzystających z czytników ekranu.
  • Osób słabowidzących, które powiększają stronę albo widzą tylko fragment formularza.
  • Osób z trudnościami poznawczymi, które potrzebują jasnych i stałych wskazówek.
  • Osób korzystających z klawiatury, które przechodzą po polach w kolejności fokusu.
  • Osób używających autouzupełniania, menedżerów haseł i zapisanych danych.
  • Wszystkich użytkowników w długich, urzędowych, finansowych albo stresujących formularzach.

Dobry przykład

  • Pole ma widoczną etykietę, na przykład „Adres e-mail”, „Data urodzenia” albo „Numer telefonu”.
  • Format danych jest podany przed wysłaniem formularza, na przykład „RRRR-MM-DD”.
  • Pola wymagane są jasno oznaczone tekstem, a nie samym kolorem.
  • Instrukcja jest blisko pola, którego dotyczy.
  • Placeholder może pomagać, ale nie jest jedyną etykietą.
  • Grupa pól, na przykład radio albo checkbox, ma pytanie lub legendę.

Zły przykład

  • Pole nie ma widocznej etykiety ani innej jasnej instrukcji.
  • Placeholder jest jedyną informacją o przeznaczeniu pola.
  • Formularz pokazuje etykietę „Data”, ale nie podaje wymaganego formatu.
  • Pola wymagane są oznaczone tylko kolorem albo samą gwiazdką bez wyjaśnienia.
  • Instrukcja pojawia się dopiero po błędzie, choć użytkownik potrzebował jej wcześniej.
  • Grupa radio ma opcje „E-mail” i „Telefon”, ale nie ma pytania, czego ten wybór dotyczy.

Przykłady kodu

Dobra etykieta pola

Widoczna etykieta mówi użytkownikowi, jakiej informacji oczekuje pole.

Kod — HTML

<label for="email">
  Adres e-mail
</label>
<input
  id="email"
  name="email"
  type="email"
>

Dobra instrukcja formatu

Instrukcja jest widoczna przed wpisaniem danych. aria-describedby łączy pole z instrukcją dla technologii wspomagających, ale widoczna instrukcja nadal jest potrzebna wszystkim użytkownikom.

Kod — HTML

<label for="birth-date">
  Data urodzenia
</label>
<p id="birth-date-hint">
  Wpisz datę w formacie RRRR-MM-DD, np. 1990-04-27.
</p>
<input
  id="birth-date"
  name="birth-date"
  type="text"
  aria-describedby="birth-date-hint"
>

Zły przykład: sam placeholder

Placeholder znika podczas pisania i nie powinien być jedyną etykietą pola.

Kod — HTML

<input
  name="email"
  type="email"
  placeholder="Adres e-mail"
>

Dobra grupa pól

Legenda mówi, czego dotyczy grupa opcji. Same etykiety „E-mail” i „Telefon” nie wystarczą, jeśli użytkownik nie zna pytania.

Kod — HTML

<fieldset>
  <legend>
    Wybierz sposób kontaktu
  </legend>

  <label>
    <input
      type="radio"
      name="contact-method"
      value="email"
    >
    E-mail
  </label>

  <label>
    <input
      type="radio"
      name="contact-method"
      value="phone"
    >
    Telefon
  </label>
</fieldset>

Dobre oznaczenie pola wymaganego

Użytkownik wie przed wysłaniem formularza, które pola są wymagane. Gwiazdka ma tekstowe wyjaśnienie.

Kod — HTML

<p>Pola oznaczone gwiazdką (*) są wymagane.</p>

<label for="given-name">
  Imię *
</label>
<input
  id="given-name"
  name="given-name"
  type="text"
  required
>

Przykład graficzny

To statyczne demo edukacyjne. Pola są makietami, nie działającym formularzem.

Źle

Adres e-mail

Pole wygląda prosto, ale widoczny jest tylko tekst wewnątrz pola. Po rozpoczęciu pisania użytkownik traci wskazówkę.

Ryzykownie

Data urodzenia

Data

Etykieta jest widoczna, ale użytkownik nadal nie wie, czy ma wpisać dzień, miesiąc i rok, ani w jakiej kolejności.

Dobrze

Data urodzenia

Wpisz datę w formacie RRRR-MM-DD, np. 1990-04-27.

1990-04-27

Użytkownik widzi etykietę i format, zanim zacznie wpisywać dane.

W tym kryterium problemem jest brak potrzebnej informacji przed wpisaniem danych, a nie sam wygląd pola.

Jak sprawdzić

  1. Znajdź wszystkie formularze i pola.
  2. Sprawdź, czy każde pole ma widoczną etykietę.
  3. Sprawdź, czy instrukcje są dostępne przed wysłaniem formularza.
  4. Sprawdź, czy format danych jest podany tam, gdzie jest wymagany.
  5. Sprawdź, czy placeholder nie jest jedyną etykietą.
  6. Sprawdź grupy checkbox i radio.
  7. Uruchom czytnik ekranu.
  8. Przejdź po formularzu klawiaturą.
  9. Sprawdź, czy użytkownik rozumie, co ma wpisać, zanim popełni błąd.

Co sprawdzi automat, a czego nie

Automat może wykryć

  • Część pól bez label.
  • Część błędnych relacji aria-describedby.
  • Część problemów z grupami pól.
  • Część problemów struktury formularzy.

Automat nie oceni pewnie

  • Czy etykieta jest zrozumiała.
  • Czy instrukcja wystarcza.
  • Czy format danych jest jasny.
  • Czy użytkownik wie, które pola są wymagane.
  • Czy placeholder nie zastępuje etykiety w praktyce.
  • Czy instrukcja pojawia się we właściwym momencie.

Typowe błędy

  • Same placeholdery zamiast widocznych etykiet.
  • Etykiety typu „Dane” albo „Informacja”.
  • Brak informacji o formacie daty, NIP, PESEL albo telefonu.
  • Gwiazdka bez wyjaśnienia, co oznacza.
  • Instrukcje pokazane dopiero po błędzie.
  • Grupy radio bez pytania lub legendy.
  • Ukryte etykiety tam, gdzie widoczna etykieta byłaby potrzebna.

Źródła