Wenn Sie den Parameter "Bezeichnung für" für Optionsfelder verwenden, um 508-konform * zu sein, ist Folgendes korrekt?
<label for="button one"><input type="radio" name="group1" id="r1" value="1" /> button one</label>
oder ist das
<input type="radio" name="group1" id="r1" value="1" /><label for="button one"> button one</label>
Der Grund, den ich frage, ist, dass "label" im zweiten Beispiel nur den Text und nicht das eigentliche Optionsfeld umfasst.
* Gemäß Section 508 des Rehabilitationsgesetzes von 1973 müssen die Bundesbehörden behinderten Menschen den Zugang zu Software und Websites ermöglichen.
Sie haben es fast geschafft. Es sollte so sein:
<input type="radio" name="group1" id="r1" value="1" />
<label for="r1"> button one</label>
Der Wert in for
sollte die ID des Elements sein, das Sie beschriften.
Jede Struktur ist gültig und zugänglich, aber das for
-Attribut sollte gleich dem id
des Eingabeelements sein:
<input type="radio" ... id="r1" /><label for="r1">button text</label>
oder
<label for="r1"><input type="radio" ... id="r1" />button text</label>
Das for
-Attribut ist in der zweiten Version optional (Label mit Eingaben), aber IIRC gab es einige ältere Browser, die den Label-Text nur dann anklickbar machten, wenn Sie ihn eingeschlossen haben. Die erste Version (Label nach Eingabe) lässt sich mit CSS mit dem nebenstehenden Geschwister-Selektor +
Einfacher gestalten:
input[type="radio"]:checked+label {font-weight:bold;}
(Lesen Sie zuerst die anderen Antworten, die das for
im <label></label>
Stichworte. Nun, beide Antworten sind korrekt, aber für meine Herausforderung war es, wenn Sie mehrere Optionsfelder haben, sollten Sie diese auswählen ein gebräuchlicher Name wie name="r1"
aber mit anderen IDsid="r1_1" ... id="r1_2"
Auf diese Weise wird die Antwort klarer und die Konflikte zwischen Namen und IDs werden ebenfalls beseitigt.
Sie benötigen unterschiedliche IDs für unterschiedliche Optionen der Optionsbox.
<input type="radio" name="r1" id="r1_1" />
<label for="r1_1">button text one</label>
<br/>
<input type="radio" name="r1" id="r1_2" />
<label for="r1_2">button text two</label>
<br/>
<input type="radio" name="r1" id="r1_3" />
<label for="r1_3">button text three</label>