Label ist immer nützlich, vor allem für Anwender, die auf Assistenzsysteme angewiesen sind.
Der Span mit dem Sternchen ist für Assistenzsysteme eher störend, weil sie es mit vorlesen. Man müsste ihn dann mit einem aria-Attribut ausblenden. Sollte ich mich da irren, wird Gunnar mich bestimmt gern korrigieren 😂. Es dürfte besser sein, ihn per :after hinzuzufügen.
Darf ich folgenden HTML Verbesserungsvorschlag machen:
<form action="http://example.com/ris/email-senden/" enctype="text/plain" method="post">
<label class="pflichtfeld">
<span>Mein Name</span>
<input name="name" required="" type="text"/>
</label>
<label class="pflichtfeld">
<span>Meine E-Mail</span>
<input name="email" required="" type="email" />
</label>
<label>
<span>Betreff</span>
<input name="betreff" type="text" />
</label>
<label class="pflichtfeld">
<span>Nachricht</span>
<textarea name="nachricht" required="" rows="10"></textarea>
</label>
<input name="empfaenger" type="hidden" value="hans@keutgen.com" />
<button>Absenden</button>
</form>
label { display: block; margin-bottom: 0.25em; }
input { width: 30em; padding: 1px;}
textarea { vertical-align: top; width: 30em; }
span { display: inline-block; width: 10em; }
.pflichtfeld span:after { content: '*'; color:red; }
Rolf