Label und Input in HTML

Ein Feld, ein Name, eine Verbindung

Textfeld, Kontrollkästchen, Hilfetext: drei Stellen für eine Beschriftung.

Website prüfen
Beispiel im Prüfbericht Markierter Befund
Markierter Befund · Kritisch · WCAG 4.1.2Regler ohne zugänglichen Namen

Eine Verbindung, drei Wirkungen

So wird sichtbarer Text zum Namen des Feldes

for und id verbinden Beschriftung, Fokus und Hilfsmittel.

Schematischer SignalwegBeide Seiten tragen denselben Schlüssel Der Wert email verbindet das sichtbare Label eindeutig mit dem Eingabefeld.
Verbindung zwischen Label und Eingabefeld Linien führen vom sichtbaren Label über den übereinstimmenden Wert email zum Feld und von dort zu visueller Bedienung, Zeigegerät und assistiver Technik.
sichtbare Beschriftung<label for="email">E-Mail-Adresse</label>
passt exaktemailfor = id
Eingabefeld<inputid="email"type="email">
sichtbarE-Mail-Adresse
Klick oder TippenFokus landet im Feld
zugänglicher Name„E-Mail-Adresse“
E-Mail-Adressemara@beispiel.de

Der violette Rahmen zeigt das Feld nach einem Klick auf die Beschriftung.

Die Verbindung wirkt mehrfach

Ein Label ist mehr als Text über einem Feld

AaOrientierung

Die sichtbare Beschriftung bleibt stehen, auch wenn bereits Text eingegeben ist.

Größere Zielzone

Ein Klick oder Tippen auf das Label aktiviert das zugehörige Feld.

)))Name für Hilfsmittel

Der Browser stellt den Labeltext als zugänglichen Namen bereit.

“ ”Sprachsteuerung

Sichtbarer Wortlaut und zugänglicher Name ergeben dasselbe Ziel.

Vier typische Leitungsfehler

Was gleich aussieht, ist technisch nicht gleich

Die rechte Spalte zeigt jeweils, welche Information am Feld ankommt.

E-Mail-AdresseFeld
Text steht nur daneben<span>…</span> <input>

Zugänglicher Name: leer

for="mail"id="email"
Schlüssel unterscheiden sich

Die Verbindung entsteht nur bei exakter Übereinstimmung.

E-Mail-AdresseKontaktadresse
aria-label ersetzt den Namen

Der sichtbare Wortlaut fehlt dann im zugänglichen Namen.

NameBeschreibung
Zusatz bleibt eine Beschreibung

HTML erlaubt mehrere Labels. Für Format- oder Hilfetext trennt aria-describedby Name und Beschreibung klar.

Vollständiges Muster

Textfeld, Hilfe und Kästchen richtig verbinden

Textfeld
Label direkt davor
Beispiel
Als bleibender Hilfetext
Kästchen
Label direkt danach
Schlüssel
Jede id nur einmal
<div class="feld">
  <label for="email">E-Mail-Adresse</label>
  <input id="email" name="email" type="email"
    autocomplete="email"
    aria-describedby="email-beispiel">
  <span id="email-beispiel">
    Beispiel: name@unternehmen.de
  </span>
</div>

<div class="wahl">
  <input id="news" name="news" type="checkbox">
  <label for="news">
    Hinweise zur Veranstaltung erhalten
  </label>
</div>

So prüfen Sie es

Vier Beweise für die Verbindung

  1. 01Klick

    Ein Klick auf den Labeltext setzt den Fokus ins Feld.

  2. 02Schlüssel

    for und id sind gleich; die id ist eindeutig.

  3. 03Name

    Im Accessibility-Baum entspricht der Name dem sichtbaren Label.

  4. 04Wert bleibt

    Beim Tippen verschwindet nur ein Beispiel, nie die Beschriftung.

Aus dem Prüfbericht

Drei Befunde an der Beschriftung

Prüfen Ein Hinweis wird als zweites Label ausgegeben Regel form-field-multiple-labels

HTML erlaubt mehrere label. Ist der zweite Text nur ein Hinweis, trennt aria-describedby den Namen von der ergänzenden Beschreibung.

Anleitung: Mehrfache Feldbeschriftungen prüfen

Zum Mitnehmen

Die Beschriftungen, korrigiert

for und id, ein Name, ein Hilfetext.

Korrektur in 3 Schritten ansehen
  1. label und Feld über for verbinden

    Das Attribut for trägt denselben Wert wie die id des Felds. Der Klick auf den Text setzt dann den Cursor ins Feld.

    KorrekturvergleichSchritt 1 · HTML

    Vorher

    <p>Ihr Name</p>
    <input type="text" name="name">

    Nachher

    <label for="name">Ihr Name</label>
    <input id="name" type="text" name="name">

    Markierte Zeilen wurden geändert

    So prüfen Sie es Klicken Sie auf „Ihr Name“. Springt der Cursor ins Feld, sitzt die Verbindung.

  2. Das Kontrollkästchen beschriften

    Auch ein Kästchen braucht ein label. Mit for auf seine id wird der Text zur Beschriftung und zur Klickfläche.

    KorrekturvergleichSchritt 2 · HTML

    Vorher

    <input id="news" type="checkbox" name="news">
    <span>Newsletter abonnieren</span>

    Nachher

    <input id="news" type="checkbox" name="news">
    <label for="news">Newsletter abonnieren</label>

    Markierte Zeilen wurden geändert

    So prüfen Sie es Klicken Sie auf das Wort „Newsletter“. Das Häkchen wechselt.

  3. Den Zusatz als Beschreibung verbinden

    Mehrere label sind in HTML erlaubt. Erklärt der zweite Text nur Einheit oder Format, gehört er als Beschreibung in aria-describedby.

    KorrekturvergleichSchritt 3 · HTML

    Vorher

    <label for="dauer">Gewünschte Mietdauer</label>
    <input id="dauer" type="number" min="1" max="24">
    <label for="dauer">Dauer in Stunden</label>

    Nachher

    <label for="dauer">Gewünschte Mietdauer</label>
    <input id="dauer" type="number" min="1" max="24"
      aria-describedby="dauer-hinweis">
    <span id="dauer-hinweis">Dauer in Stunden</span>

    Markierte Zeilen wurden geändert

    So prüfen Sie es Gehen Sie ins Feld. Ein Vorleseprogramm nennt erst den Namen, dann den Hinweis.

Werbung

Kostenloser Website-Barrierefreiheits-Check

Website auf Barrierefreiheit prüfen.

Technische WCAG-Warnsignale erkennen. Kritische Stellen zuerst prüfen.

Der Website-Check ist bereit.

Werbung

Ein letzter Schritt

Prüfen, bevor Sie gehen.

Finden Sie automatisch erkennbare Barrieren auf Ihrer eigenen Website.

Website prüfen

Kostenlos starten · keine Installation

Automatisches Screening. Tastaturbedienung und Screenreader bleiben manuelle Prüfung.