在HTML/XHTML中<b>和<strong>, <i>和<em>之间的区别是什么?什么时候使用它们?


当前回答

问:strong, b, bold, em, i的区别?

答:这些是内联属性。

Strong:用于在语义上加粗显示文本或突出显示文本。

粗体或b:这个粗体标记只是常规粗体样式的偏移文本。

Em: < Em >标记在语义上强调重要的单词。

I: < I >标签只是斜体样式的偏移文本。

注意:您应该使用<strong></strong>和<em></em>标签,它们的有意义的名称告诉内容的类型。语义标签对SEO也有帮助。

其他回答

它们对普通的web浏览器渲染引擎有相同的效果,但它们之间有根本的区别。

正如作者在一篇讨论列表帖子中写道:

想想三种不同的情况:

web浏览器 盲人 移动电话

“大胆”是一种风格——当你说“大胆一个字”时,人们基本上都知道 这意味着在字母周围添加更多的“墨水”,直到它们突出 其余的信里有更多。

不幸的是,这对盲人来说毫无意义。在手机上 和其他pda,文本已经是粗体,因为屏幕分辨率非常小。你不能在没有搞砸的情况下加粗。

<b>是一种样式——我们知道“粗体”应该是什么样子。

然而,<strong>表示应该如何理解某些内容。“Strong”在浏览器中可能(通常)意味着“粗体”,但对于Jaws(盲人)这样的语音程序来说,它也可能意味着较低的音调,或者在Palm Pilot上用下划线表示(因为你不能用粗体加粗)。

HTML从来就不是关于样式的。搜索“Tim Berners-Lee”和“语义网”。>是语义的——它描述了它包围的文本(例如,“这个文本应该比你所显示的其余文本更强”),而不是描述它包围的文本应该如何显示(例如,“这个文本应该是粗体”)。

<b>和<i>都与风格有关,而<em>和<strong>是语义的。在HTML 4中,前者被归类为字体样式元素,后者被归类为短语元素。

正如您正确指出的,<i>和<em>通常被认为是相似的,因为浏览器通常以斜体显示它们。但根据规范,<em>表示强调,<strong>表示更强调,这很清楚,但经常被误解。另一方面,何时使用<i>或<b>之间的区别实际上是一个风格问题。

在HTML Lang中,这两个标签的用法如下:

simple text this is test text normal text



simple text this is important textwith normal text

这两个HTML标记之间的主要区别是,粗体只使文本在视觉上看起来粗体,而强符号也将各自的文本视为必要的,并表明它是一个清晰的单词或文本部分。

这种差异是由于HTML代码区分了符号标记和物理可视HTML标记。前者指的是相关区域的含义,后者只是定义了浏览器中的光学显示。

我要冒险从历史和现实的角度来分析:

是的,根据规范,<strong>在HTML4中具有语义意义,<b>具有严格的表示意义。

是的,当HTML5出现时,b和i引入了略有不同的新语义。

是的,W3C基本上推荐TL,DR;不要用b和i。

您应该始终记住,b元素的内容不一定总是粗体,i元素的内容也不一定总是斜体。实际的样式取决于CSS样式定义。您还应该记住,在某些语言中,粗体和斜体可能不是内容的首选样式。如果有更描述性和更相关的标记可用,则不应该使用b和i标记。

BUT:

现实世界的互联网有大量的现有HTML,这些HTML永远不会更新。现实世界的互联网必须考虑在庞大的软件和CMS系统网络之间生成和复制粘贴的内容,这些软件和CMS系统都有不同的开发团队,建立在不同的时代。

因此,如果您正在编写HTML或构建一个为其他人编写HTML的系统,当然,一定要使用<strong>而不是<b>来表示“强烈强调”,因为它在语义上更正确。

但实际上,实际情况是,<strong>和<b>的语义和风格意义已经随着时间的推移而合并。

如果我正在构建一个允许任何样式文本粘贴的CMS,我需要为正在粘贴<b>并表示“强烈强调”的人以及正在粘贴<strong>并表示“使此文本加粗”的人进行计划。这可能不是“正确的”,但这就是现实世界在这个时刻的运作方式。

因此,如果我为该网站写一个样式表,我可能最终会写一些样式,看起来像这样:

b,
strong {
  font-weight: 700;
  /* ... more styles here */
}

i,
em {
  font-style: italic;
  /* ... more styles here */
}

或者,我将依赖于浏览器的默认值,它在我所知道的每个现代浏览器中执行与上述代码相同的任务。

或者,我可能是数百万个使用normalize.css的网站之一,它会注意确保b和strong被同等对待。

世界上已经有如此庞大的HTML海洋在这个期望下工作,我只是无法想象b会被贬低而支持strong,或者浏览器会开始默认地以不同的方式显示它们。

就是这样。这就是我对语义、历史和现实世界的看法。b/i和strong/em是一样的吗?不。在现代文明崩溃之前,它们是否可能在几乎所有情况下都存在并被视为相同?我想是的。

“它们的效果是一样的。但是,XHTML(一种更干净、更新的HTML版本)推荐使用<strong>标记。Strong更好,因为它更容易读懂——它的意思更清楚。此外,<strong>传达了一种含义-强显示文本-而<b>(用于加粗)传达了一种方法-将文本加粗。使用strong,如果您使用CSS样式表更改使文本强的方法,那么您的代码仍然有意义。

<i>和<em> "之间的差异也是如此。

谷歌迪克西特:

http://wiki.answers.com/Q/What_is_the_difference_between_HTML_tags_b_and_strong