Servus!
Ich gehe bei meinen Antworten oft auf das ein, was der/die andere geschrieben hat. So auch hier: „Nein, HTML-Code ist das nicht“ bezog sich direkt auf Linuchs’ „HTML-Code des Feldes“.
Die sprachlichen Feinheiten scheinen nicht von allen verstanden zu werden … 🤔
Ich würde das hier gerne beenden, bzw. nicht weiter anfachen. Und trotzdem bin ich inhaltlich auf @dedlfix Seite.
Mich hat geärgert, dass Du das Wiki verlinkt und gleich wieder als fehlerhaft bezeichnet hast.
Dass das Formular unbedienbar ist, weil die Eingabefelder keine Beschriftung[1] haben, muss man dir immer wieder aufs Neue sagen‽
Im SELF-Wiki steht:
Drei Arten, label logisch einem Eingabe-Element (hier input) zuzuordnen:
- Wird das betreffende input-Element als Kindelement des label definiert, so ist eine ausdrückliche Zuordnung zwischen input und label mittels for-Attribut nicht mehr zusätzlich nötig. Die Zuordnung erfolgt dabei implizit über die Struktur des Quelltextes. Dies führt jedoch bei Screenreadern zu Schwierigkeiten.
Empfehlung: Nutzen Sie auch bei einer impliziten Zuordnung der Labels zu den Eingabefeldern for-Attribute.
Die von mir markierten Textstellen hast Du, der von sprachlichen Feinheiten redet, geflissentlich weggelassen.
Der Aufbau des Beispiels richtet sich nach der Spec, die das label ebenfalls um das input-Element notiert:
<p><label>Full name: <input name=fn> <small>Format: First Last</small></label></p>
<p><label>Age: <input name=age type=number min=0></label></p>
<p><label>Post code: <input name=pc> <small>Format: AB12 3CD</small></label></p>
Im Übrigen sind alle folgenden Live-Beispiele eben nicht input innerhalb label, sondern label + input.
Der von Dir verlinkte Twitter-Thread dreht sich um den von Nuance vertriebenen Dragon-User-Agent, der bei label-um-input einen Bug hat.
Avoid:
<label><input […]></label>
Dragon does not support this.
Still an issue. Known by Dragon. No public bug tracker. Hopefully new owners (Microsoft) can fix this and other issues (like failures with native date picker, ARIA support, etc.).
Manchmal frage ich mich, warum du so viel Energie darauf verwendest uns beweisen zu wollen, dass wir alle blöd sind?
Herzliche Grüße
Matthias Scharwies
Einfach mal was von der ToDo-Liste auf die Was-Solls-Liste setzen.“
Sehe gerade, dass die Seite auch berichtigt werden muss. „Wird das betreffende input-Element als Kindelement des label definiert, so ist eine ausdrückliche Zuordnung zwischen input und label mittels for-Attribut nicht mehr zusätzlich nötig“ ist leider falsch. ↩︎