首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >CSS/HTML:将文本变为斜体的正确方法是什么?

CSS/HTML:将文本变为斜体的正确方法是什么?
EN

Stack Overflow用户
提问于 2010-01-21 18:11:43
回答 11查看 266.4K关注 0票数 210

将文本变为斜体的正确的方法是什么?我已经看到了以下四种方法:

代码语言:javascript
复制
<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类来表示语义。到目前为止,这似乎是最好的方法,但它实际上有两个问题。

  1. 并不是所有的文本都有足够的含义来保证语义标记。例如,页面底部的斜体文本真的是脚注吗?或者这只是一个小插曲?或者完全不同的东西。也许它没有特殊的含义,只需要以斜体表示,以便在表示上将其与其前面的文本分开。当
  2. 的语义不够强大时,它的语义可能会改变。假设我使用了“脚注”,只是因为文本位于页面底部。几个月后,当我想在底部添加更多文本时,会发生什么?它不再是一个脚注。我们如何选择一个不像<em>那么通用但又避免了这些问题的语义类?

摘要

在许多情况下,似乎对语义的要求似乎过于繁重,因为想要使某些东西变为斜体并不意味着具有语义意义。

此外,将样式与结构分离的愿望导致CSS被吹捧为<i>的替代品,而在某些情况下,CSS实际上用处不大。因此,这让我回到了不起眼的<i>标签,并想知道这一思路是否是将其留在HTML5规范中的原因?

在这个主题上也有什么好的博客文章或文章吗?也许是由那些参与决定保留/创建<i>标记的人提出的?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2108318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档