web-dev-qa-db-fra.com

Utilisation de <U> Soulignez-vous </ U> obsolète et non validée?

L'utilisation du soulignement déprécié et non validé?

32
Jitendra Vyas

Il est obsolète dans HTML 4 http://www.w3.org/tr/rec-html40/present/graphics.html#edef- afin de ne pas valider.

Utilisez des styles à la place. Peut-être un <span> étiqueter. Bien que, si vous voulez ce que vous essayez d'ajouter un soulignement, d'être souligné sans styles activés. Utiliser un <em> tag et utilisez CSS pour lui donner un soulignement.

53
Jonny Haynes

Oui, c'est obsolète. Utilisez des styles à la place. Notez également que le texte souligné peut être déroutant, car il ressemble au style des liens par défaut et peut frustrer certains utilisateurs.

Si vous le souhaitez, vous pouvez même repuposer un autre élément HTML, comme em:

CSS :

em {
  font-style: normal;         /* Removes italics */
  text-decoration: underline; /* Makes underline */
}

HTML :

<p>I like to <em>underline</em> words.</p>
19
Sampson

<rant>

Commentaire général sur "Sémanticals Versus Style": Bien qu'il y ait certainement une vérité à cela, c'est une leçon que certaines personnes ont du chemin à revivre.

Dans la vraie vie, de nombreuses personnes utilisent des italiques pour l'accent. Bien sûr, je pourrais créer un style CSS de "Span.emphasized {style de police: italique;}", puis au lieu de mettre "<i> </ i>" autour du texte souligné, mettez "<span class =" souligné '> </ span> ". Et exactement qu'est-ce que cela gagne, en plus de beaucoup de dactylographie supplémentaire?

En outre, il y a un million de raisons pour lesquelles je voudrais peut-être mettre un texte en italique. C'est peut-être le titre d'un livre; Je veux peut-être l'insister; J'utilise peut-être la convention d'italique des mots étrangers; Etc. Si j'ai 10 mots dans un document en italique pour 9 raisons différentes, la réponse pédalette est que je devrais créer 9 entrées de style CSS différentes pour décrire toutes ces raisons. Personnellement, je ne fais presque jamais cela, car il gagne rien. Oui, théoriquement, je pourrais décider que les titres de livres devraient être dans une police cursive au lieu d'en italique ou d'une telle. En pratique, la probabilité que cela se produise est assez proche de zéro et si c'était le cas, et j'ai deux titres de ce livre de ce type dans mon document, je peux simplement le changer deux fois. Théoriquement, quelqu'un pourrait vouloir scanner mon texte avec un programme qui recherche des titres de livres. Mais dans la pratique, à moins que nous n'ayons arrangé cela à l'avance et que nous sommes d'accord sur les noms de classe CSS, il n'ya aucun moyen qu'ils vont faire cela.

Je ne dis pas que CSS est inutile. Bien au contraire. Lorsque j'ai un objet sémantique qui se répète plusieurs fois dans mon texte et qui n'a pas de style "naturel", largement reconnu, il devient alors assez plausible de supposer que, comme je continue à travailler sur le document, je souhaite peut-être changer le style. Dans ce cas, il est beaucoup plus facile de changer une seule entrée CSS plutôt que de modifier cent instances. Ou je souhaite peut-être utiliser un style différent dans différentes situations, comme mettre des messages d'avertissement en rouge lors de l'affichage à l'écran, mais mettez-les en gras lorsque vous imprimez un document noir et blanc.

Pour exmplample, j'utilise régulièrement CSS pour des citations de devis, car je change souvent mon esprit sur l'italique, l'indentation et la taille de la police. Je n'utilise jamais CSS pour le texte que je veux en italique pour mettre l'accent sur l'accent, car je sais qu'il est extrêmement improbable que je voudrais jamais rendre cela comme autre que des italiques.

Mon point est, je m'en fiche de ce que certains pédant aient dit "C'est une règle que vous devez toujours obéir. Vous demandez pourquoi vous devez obéir à cela? Mais je viens de vous le dire! Parce que c'est une règle!" J'utilise des outils et des techniques utiles dans la présente demande. (Et oui, oui, il y a beaucoup de règles de pouce valables 99% du temps et ne valez pas la peine d'être réfléchie jusqu'à ce que la rare exception augmente.)

</ rant>

8
Jay

le <u> tag a été obsolète en faveur des feuilles de style.

La plupart des navigateurs continueront de la reconnaître pendant longtemps à venir, tout simplement sur la nécessité d'être compatible avec le contenu déjà présent. Mais si vous voulez par la conformité XHTML, vous devriez éviter d'utiliser.,

Vous pouvez en lire plus sur étiquettes HTML obsoltées ici .

5
LBushkin

Oui, il a été obsolète en HTML 4. Cependant, vous pouvez simplement utiliser le CSS suivant.

span.underline { text-decoration: underline; }

Cependant, le nom de la classe souligné n'est pas sémantique. Vous voudrez peut-être le remplacer par un nom de classe décrivant le contenu dont vous avez besoin souligné.

2
Joe Martinez

La balise est obsolète mais pas obsolète. La raison pour laquelle il n'est pas obsolète est de permettre aux navigateurs de prendre en charge l'élément de compatibilité en arrière.

La balise n'est pas définie dans le xhtml1-strict.dtd mais il est disponible sous -xhtml1-fremeet.dtd et xhtml1-transitional.dtd. Sa déclaration est la suivante (pas sur la DTD stricte):

<!ELEMENT u %Inline;>   <!-- underline -->
<!ATTLIST u %attrs;>

Ceci permet d'autoriser la compatibilité en arrière avec les navigateurs.

Ne pas Utilisez la balise comme "Cette balise a été obsolète en faveur des feuilles de style". Cela pourrait bientôt devenir obsolète. Utilisez plutôt la feuille de style, par exemple.

/** Underlining an anchor tag in CSS **/
a {
    text-decoration: underline;
}
1
Buhake Sindi

Obsolète: oui.
[.____] validé :? Je suppose que cela dépend de ce que vous utilisez pour la valider.

http://www.codehelp.co.uk/html/depecated.html

0
NotMe

Oui, il est obsolète.

0
Dominik Sandjaja

Vous avez marqué votre question avec XHTML et HTML. La balise U est définitivement obsolète dans XHTML-strict. Je pense que cela peut toujours être correct dans HTML-4-Transitional. Comme les autres personnes l'ont dit, utilisez des styles à la place. Avec un bon nom, ils donnent plus de sémantique à vos documents.

0
Peter Rowell

Si vous utilisez la dernière version de HTML ou XHTML, alors oui, il est obsolète. Peu importe, en général, vous voulez éviter de souligner tout ce qui n'est pas un lien, car il peut rendre les choses plus confuses pour l'utilisateur.

0
aslum