7
votes

Est l'utilisation d'une étiquette
entre une <étiquette> et son bonne pratique?

Les champs de mon formulaire ont une étiquette, d'un peu d'aide du texte, d'un exemple de texte et d'un texte contextuel.

<!--With Help and Example-->
<li>
    <label for="ingredients">Ingredients</label>
    <br/><!--Is this good practice?-->
    <span class="help">Enter one ingredient per line.</span>
    <br/>
    <textarea id="ingredients" name="ingredients"></textarea>
    <br/>
    <span class="example"><b>Example:</b><br/>1 Cup of Flour<br/>Pinch of Salt<br/>1 Tbsp of Paprika</span>

<!--With context-->
<li>
   <label for="yield">Yield</label>
   <br /> <!--Wish labels were block and you had to style them to be inline-->
   <input type="number" id="yield" name="yield" />
   <span class="context"> servings.</span>
</li>


2 commentaires

Votre utilisation de est absolument mauvais HTML.


Pourquoi ça? Je ne veux pas l'accent mis sur le texte qu'il contient. Je le veux juste typographiquement / visuellement audacieux. En d'autres termes. Si je l'ai quitté et que je n'ai pas fait le texte audacieux, cela aurait toujours un sens total. w3schools.com/html5/tag_b.asp


5 Réponses :


3
votes

Si vous voulez dire "mauvais" comme invalide, selon le validateur W3, non.
S est autorisé entre <étiquette> et éléments.


2 commentaires

En réalité, Les éléments sont autorisés à l'intérieur

  • éléments. Ses frères et sœurs sont complètement non pertinents.


    Je sais que c'est valide. Je suppose que ce que je me demande, c'est que c'est une bonne pratique. Je suis peut-être sur-pensant à la question.



  • 2
    votes

    Je ne pense pas qu'une étiquette doit être dans la même ligne que le champ de saisie. La seule chose qui est importante pour une bonne expérience utilisateur, c'est que c'est à côté, ce qui pourrait également dire ci-dessus.


    0 commentaires

    12
    votes

    Si on est vraiment pédant, presque toutes les utilisations de
    sont "mauvais html".
    signifie une pause de ligne sémantique. En d'autres termes, où éliminez le
    changerait la signification du contenu. Celles-ci ne se produisent vraiment qu'en poésie / paroles et adresses postales.

    Vous pouvez obtenir le même résultat en faisant les autres éléments à l'intérieur du

  • s ont l'affichage: bloc de blocage.

  • 1 commentaires

    Merci. Je pensais ça. Je prévoyais de les coigner comme un bloc. Pendant que j'écris le HTML, je continue de regarder tout courir ensemble sur une ligne, dans mon navigateur. Je ne pouvais pas m'empêcher de casser les lignes.



    3
    votes

    "mauvais" comme invalide? Non. "Mauvais" comme dans le désamantisme? Oui.

    Un meilleur moyen de faire cela serait d'envelopper votre Éléments éléments dans p éléments. Ce sont des paragraphes, après tout. (En outre, les étiquettes ne sont pas quelque chose que doit être des éléments bloquants, il s'agit d'un élément inline, car il donne but au texte en ligne, de la même manière em ou le temps HTML5 TIME TIME - Un élément de bloc fait plus que cela. Style IT comme élément de bloc utilisant CSS)

    EDIT: Voir aussi la réponse de Alohci, expliquant pourquoi
    est utilisé de manière incorrecte ici.


    3 commentaires

    Envelopper une étiquette dans un paragraphe? Ce n'est pas mieux que d'utiliser une pause de ligne. La plupart des étiquettes de forme ne sont pas des paragraphes de texte, de sorte qu'elles n'appartiennent pas à une balise

    .


    Un "paragraphe" ne doit pas être plus long que quelques mots, il décrit simplement un bloc de texte.


    Non, par écrit, un paragraphe contient typiquement une ou plusieurs phrases ( fr.wikipedia.org/wiki/autagragra < / a>) et traite un point ou une idée unique. Étant donné que la série W3C indique que la balise

    indique un paragraphe de texte ( w3.org/tr/1999/rec-html401-19991224/truc/text.html#h-9.3. 1 ) Une étiquette de formulaire est une utilisation inappropriée de l'élément

    .



    4
    votes

    Ce n'est pas mauvais en soi, mais vous devriez utiliser CSS pour le style (par exemple la mise en page). Il facilite le code de lire. Par exemple,

    CSS xxx

    html xxx

    Ce code en action .


    0 commentaires