Quelle est la bonne façon de mettre le texte en italique? J'ai vu les quatre approches suivantes:
<i>Italic Text</i>
<em>Italic Text</em>
<span class="italic">Italic Text</span>
<span class="footnote">Italic Text</span>
<i>
C'est "l'ancienne voie". <i>
n'a pas de sens sémantique et ne fait que transmettre l'effet de présentation du texte en italique. Pour autant que je puisse voir, c'est clairement faux parce que ce n'est pas sémantique.
<em>
Cela utilise le balisage sémantique à des fins purement de présentation. Il se trouve que <em>
par défaut, le texte est rendu en italique et il est donc souvent utilisé par ceux qui savent qu'il <i>
faut éviter mais qui ne connaissent pas sa signification sémantique. Tout le texte en italique n'est pas en italique car il est souligné. Parfois, cela peut être exactement le contraire, comme une note latérale ou un murmure.
<span class="italic">
Cela utilise une classe CSS pour placer la présentation. C'est souvent considéré comme la bonne façon, mais encore une fois, cela me semble mal. Cela ne semble pas transmettre plus de sens sémantique <i>
. Mais, crient ses partisans, il est beaucoup plus facile de changer tout votre texte en italique plus tard si vous, par exemple, le vouliez en gras. Pourtant, ce n'est pas le cas car il me resterait alors une classe appelée "italique" qui rendrait le texte en gras. En outre, il n'est pas clair pourquoi je voudrais un jour changer tout le texte en italique sur mon site Web ou du moins nous pouvons penser à des cas où cela ne serait pas souhaitable ou nécessaire.
<span class="footnote">
Cela utilise une classe CSS pour la sémantique. Jusqu'à présent, cela semble être le meilleur moyen, mais cela pose en fait deux problèmes.
Tous les textes n'ont pas une signification suffisante pour justifier un balisage sémantique. Par exemple, le texte en italique au bas de la page est-il vraiment une note de bas de page? Ou est-ce un aparté? Ou tout autre chose. Peut-être n'a-t-il pas de signification particulière et n'a-t-il qu'à être rendu en italique pour le séparer de façon présentation du texte qui le précède.
La signification sémantique peut changer lorsqu'elle n'est pas présente avec une force suffisante. Disons que j'ai accepté la "note de bas de page" basée sur rien de plus que le texte se trouvant en bas de la page. Que se passe-t-il lorsque quelques mois plus tard, je veux ajouter plus de texte en bas? Ce n'est plus une note de bas de page. Comment choisir une classe sémantique moins générique que
<em>
mais qui évite ces problèmes?
Résumé
Il semble que l'exigence de sémantique semble être trop contraignante dans de nombreux cas où le désir de mettre quelque chose en italique n'est pas censé avoir un sens sémantique.
En outre, le désir de séparer le style de la structure a conduit à vanter CSS comme un remplacement <i>
lorsqu'il y a des occasions où cela serait en fait moins utile. Donc, cela me laisse avec l'humble <i>
balise et me demande si ce train de pensée est la raison pour laquelle il est laissé dans la spécification HTML5?
Existe-t-il également de bons articles de blog ou articles sur ce sujet? Peut-être par ceux impliqués dans la décision de conserver / créer le <i>
tag?