Je me demande quelle est la différence entre les deux extraits de code suivants:
<label>Input here : </label>
<input type='text' name='theinput' id='theinput'/>
et
<label for='theinput'>Input here : </label>
<input type='text' name='theinput' id='theinput'/>
Je suis sûr que cela fait quelque chose lorsque vous utilisez une bibliothèque JavaScript spéciale, mais à part cela, cela valide-t-il le code HTML ou requis pour une autre raison?
select
met uniquement l'accent sur la sélection plutôt que sur l'extension des options.L'
for
attribut associe l'étiquette à un élément de contrôle, comme défini dans la description delabel
la spécification HTML 4.01. Cela implique, entre autres, que lorsque l'label
élément reçoit le focus (par exemple en cliquant dessus), il passe le focus à son contrôle associé. L'association entre une étiquette et un contrôle peut également être utilisée par des agents utilisateurs basés sur la parole, qui peuvent donner à l'utilisateur un moyen de demander ce qu'est l'étiquette associée, lorsqu'il traite un contrôle. (L'association peut ne pas être aussi évidente que dans le rendu visuel.)Dans le premier exemple de la question (sans le
for
), l'utilisation dulabel
balisage n'a aucune implication logique ou fonctionnelle - il est inutile, sauf si vous faites quelque chose avec en CSS ou JavaScript.Les spécifications HTML ne rendent pas obligatoire d'associer des étiquettes aux contrôles, contrairement aux directives d'accessibilité du contenu Web (WCAG) 2.0. Ceci est décrit dans le document technique H44: Utiliser des éléments d'étiquette pour associer des étiquettes de texte à des contrôles de formulaire , ce qui explique également que l'association implicite (par imbrication par exemple à l'
input
intérieurlabel
) n'est pas aussi largement prise en charge que l'association explicite viafor
et lesid
attributs,la source
En résumé, cela se réfère à
id
l'entrée de, c'est tout:la source
L'attribut for de la
<label>
balise doit être égal à l'attribut id de l'élément lié pour les lier ensemble.la source
L'attribut for indique que cette étiquette signifie champ de saisie associé, ou case à cocher ou bouton radio ou tout autre champ de saisie de données qui lui est associé. par exemple
la source
Il étiquette quelle que soit l'entrée est le paramètre de l'
for
attribut.la source