将文本变为斜体的正确的方法是什么?我已经看到了以下四种方法:
<i>Italic Text</i>
<em>Italic Text</em>
<span class="italic">Italic Text</span>
<span class="footnote">Italic Text</span>
<i>
这是“老办法”。<i>
没有语义含义,仅传达将文本变为斜体的表示效果。据我所知,这显然是错误的,因为这是非语义的。
<em>
这将语义标记用于纯粹的表示目的。碰巧<em>
默认以斜体显示文本,因此它经常被那些知道应该避免使用<i>
但不知道其语义含义的人使用。并不是所有的斜体文本都是斜体的,因为它被强调了。有时,它可以是完全相反的,就像旁白或耳语。
<span class="italic">
这使用了一个CSS类来放置表示。这通常被吹捧为正确的方式,但在我看来,这似乎是错误的。这似乎并没有传达出<i>
更多的语义含义。但是,它的支持者抱怨说,如果你想要加粗,那么稍后更改所有的斜体文本要容易得多。然而,情况并非如此,因为我将只剩下一个名为"italic“的类,它将文本显示为粗体。此外,还不清楚为什么我会想要更改我网站上的所有斜体文本,或者至少我们可以想到这样做不可取或不必要的情况。
<span class="footnote">
它使用一个CSS类来表示语义。到目前为止,这似乎是最好的方法,但它实际上有两个问题。
<em>
那么通用但又避免了这些问题的语义类?摘要
在许多情况下,似乎对语义的要求似乎过于繁重,因为想要使某些东西变为斜体并不意味着具有语义意义。
此外,将样式与结构分离的愿望导致CSS被吹捧为<i>
的替代品,而在某些情况下,CSS实际上用处不大。因此,这让我回到了不起眼的<i>
标签,并想知道这一思路是否是将其留在HTML5规范中的原因?
在这个主题上也有什么好的博客文章或文章吗?也许是由那些参与决定保留/创建<i>
标记的人提出的?
https://stackoverflow.com/questions/2108318
复制相似问题