Je n'ai jamais eu de raison de placer un élément d'étiquette dans un élément de légende (je n'y ai jamais vraiment pensé ou je ne l'ai pas vu). Mais avec le design que j'implémente, c'est tentant de le faire.Habillage d'un élément d'étiquette dans un élément de légende
Voici ce que je suis tenté de le faire:
<fieldset>
<legend><label for="formInfo">I would like information on</label></legend>
<select id="formInfo">
<option value="Cats">Cats</option>
<option value="Dogs">Dogs</option>
<option value="Lolz">Lolz</option>
</select>
</fieldset>
Il fonctionne comme prévu (en cliquant sur l'étiquette se concentre l'entrée correspondante) dans Firefox3, Safari, Opera et IE6/7 et il passe la validation, mais Je me demande simplement s'il existe des raisons connues (accessibilité, sémantique, problèmes de navigateur) pourquoi cela ne devrait pas être fait
A voté vers le haut. RE: dernier paragraphe - ... et s'il y a d'autres champs dans le fieldset alors la légende sera annoncée pour ces champs aussi, ce qui sera probablement indésirable. –
Le tag FIELDSET de fermeture a été grignoté par l'éditeur de texte. Je suis allé l'ajouter, il était toujours là, mais pas dans le bloc de code. J'apprécie votre réponse - juste l'entrée bien pensée que j'espérais. J'étais sur la clôture et vous m'avez parlé avec éloquence. Merci! –
En remarque, l'élément LEGEND est un peu difficile à contrôler avec css. J'allais utiliser le positionnement absolu, mais j'ai eu des problèmes. À la fin, j'ai décidé de renoncer à l'élément LEGEND et d'utiliser un LABEL avec une classe spéciale. –