1174 sujets

Accessibilité du Web

Bonjour,

dans un cadre de l'accessibilité d'un site, et de la souplesse de la mise en forme de la template, est il envisageable de faire quelque chose dans ce genre

<label for="input">Label de l'input</label>
<input id="input" />
<label for="input">Message d'alerte qui ne s'affiche qu'après erreur de validation</label>


donc pour résumé, peut on mettre un double label sur un champs input ?
cela dans l'optique d'avoir plus de souplesse dans la mise en forme de la charte graphique.

d'autre part, est il judicieux de placer le message d'alter APRES l'input ?
Modifié par Viper82 (24 Jul 2007 - 11:33)
Viper82 a écrit :
donc pour résumé, peut on mettre un double label sur un champs input ?

Je ne sais pas si c'est valide, mais ça ne me semble pas judicieux.

Viper82 a écrit :
Cela dans l'optique d'avoir plus de souplesse dans la mise en forme de la charte graphique.

Pourquoi utiliser <label> si c'est juste une question de mise en forme?

Viper82 a écrit :
d'autre part, est il judicieux de placer le message d'alter APRES l'input ?

Disons qu'ergonomiquement ça peut être intéressant. Les autres solutions qui me viennent à l'esprit sont:
- de placer chaque message d'erreur avant le couple label+input concerné;
- de placer tous les messages d'erreur en début de page ou juste avant le formulaire.

Pour la première solution:
<p class="erreur"><strong>Message d'alerte qui ne s'affiche qu'après erreur de validation</strong></p>
<p><label for="input">Label de l'input</label> <input id="input" /></p>
hmmmmmmmmmm....
c'est dans un souçi d'une part
d'ergonomie + mise en forme pour les personne "valides"

mais aussi j'essaye de conserver le maximum d'accessibilité
ce qui implique l'utilisation de label

je part du postulat que d'un point de vu accessibilité, ce qui se réfère à l'input doit se placer dans un label (non ?)

d'autre part, je l'accorde, il serait plus simple de faire

<label>Mon label, mon erreur s'il y'a lieu</label><input id="input" />


seulement, cela ne me permet pas de séparer concrètement mon erreur de mon label d'un point de vu graphique...

QUI PLUS EST

dans mon CMS? j'utilise une interface de RAD (Rapid Application developpement) qui va me générer des "briques" de HTML

et dans ce cas, j'ai plusieurs "canaux de sorti" du genre, mabrick.input mabrick.label mabrick.erreurs avec les bon paramêtres qui vont bien, que je place dans une template prédéfinie...

d'ou le fait que si je part du premier postulat que j'ai émis, je me retrouve avec deux "label", ceci, étant, je pourrai tout a fait générer simplement le message d'erreur dans un <p> si cela ne pose pas de souçi d'un point de vu accessibilité

dans tous les ca,s dans le cadre de l'accessibilité, il me semble qu'il vaut mieux placer l'érreur AVANT l'input non ?
Viper82 a écrit :
je part du postulat que d'un point de vu accessibilité, ce qui se réfère à l'input doit se placer dans un label (non ?)

Pas tout à fait. Le label indique la fonction du contrôle de formulaire (input, select, textarea). Mais toute information relative à un contrôle de formulaire ne doit pas forcément être dans un label. C'est peut-être même problématique (les experts en accessibilité nous le diront).

Pour un texte d'avertissement (erreur, information essentielle), le placer avant le couple label+input est effectivement intéressant. Si c'est juste une information utile mais pas indispensable, on doit pouvoir le placer après (à droite, en dessous...).
Florent V. a écrit :
Le label indique la fonction du contrôle de formulaire

Qu'entend tu exactement par "controle" ?
cela fait référence au verbe "controler" dans le sens si je clique sur le label, je controle la checkbox qui se trouve a coté, ou je set le focus dans l'input ?

si c'est ca, il est vrai que l'erreur, n'as pas forcément sa place dans le label (si vraiment je dois la séparer du point de vu de la charte, et donc elle pourrai venir se placer dans un <p> ce qui résoudrais mon problème de double label...

autrement, peut tu m'éclairer sur la notion de "controle" de l'input ?
Modifié par Viper82 (24 Jul 2007 - 14:19)
Viper82 a écrit :
Qu'entend tu exactement par "controle" ?

Je pensais aux éléments input, button, textarea, select... c'est à dire tous les éléments de formulaire sauf form, fieldset, legend et label.
Mais c'est une appelation personnelle, pas officielle. Smiley cligne
haaaaaaa oki Smiley langue
boaf, c'est pas grave...

bon bon, cependant, la discussion a bien fait avancer le débat je trouve...

au moins ici, c'est un forum ou l'on trouve des réponses. (tout du moins des pistes de travail)

Merci beaucoup Florent!
Je me suis posé la question récemment du double label, et je n'ai rien trouvé qui "interdise" son utilisation.
Il est peut être utile au effet au niveau ergonomique, mais c'est vrai que sémantiquement parlant (donc important à mon avis pour les lecteurs d'écran), un message d'erreur/alerte n'est pas un "label" d'un champ. Je pense à label ici en tant qu'élément descriptif d'un élément de formulaire.