何时是使用<b>和<i>代替<strong>和<em>的最佳时间,如果有的话?</em> </strong> </i> </b>

时间:2008-09-15 15:08:56

标签: html semantics

从语义上讲,在今天的网站(2008年末)中是否有适当的位置使用粗体<b>和斜体<i>标签比使用更广泛的<strong><em>代码?

15 个答案:

答案 0 :(得分:10)

从不。它们在XHTML 2.0中被删除,因为它们是表示标签。 CSS应该用于粗体/斜体内容。

编辑:如果您正在寻找一个纯粹的演示标记,那就是带有类和一点CSS的SPAN标记。

答案 1 :(得分:10)

虽然一般情况下我会远离非语义标签,例如bistrongem不是b的直接替代品i

我会使用bi当它只是你想要的演示文稿时,你标记的内容没有语义含义。例如,像stackoverflow这样的徽标可以用stack<b>overflow</b>标记。 “溢出”部分对“堆栈”没有语义含义,但stack<span class="overflow-logo">overflow</span>也没有提供任何内容。

希望这有帮助。


不确定如何评论(编辑:需要moar karma!),但这是对Erik评论的回复。

请阅读the HTML5 working draft。它为何时使用b提供了很好的解释。

  

b元素表示在文体上偏离正常散文而不传达任何额外重要性的文本范围,例如文档摘要中的关键词,评论中的产品名称或其他文本范围。典型的印刷演示文稿是大胆的。

“溢出”没有强调徽标中的“堆叠”,因此用em包裹“溢出”在语义上是不正确的。

答案 2 :(得分:6)

根据HTML 5 spec<b><i>应在适当时使用

On the i

  

[A]以另一种声音或情绪或其他方式偏离正常散文的文本范围,例如分类标识,技术术语,来自其他语言的惯用短语,思想,船名或某些其他散文,其典型的排版呈现为斜体。

On the b

  

[A]文本范围在风格上偏离正常散文而不传达任何额外的重要性,例如文档摘要中的关键词,评论中的产品名称,或其典型印刷表现形式加粗的其他文本跨度。

一般来说,当所有其他语义选项都已用尽时,“在适当的时候”被视为最后的手段。虽然它们可能是“表现形式”,但对于它们的语义表兄<em><strong>来说,分别将它们视为斜体或粗体肯定是一种损害。

答案 3 :(得分:4)

http://www.webmasterworld.com/forum21/7095-1-15.htm上有一个很好的评论:

  

“如果页面阅读器真正阅读每一个   <strong>用强烈的声音标记,或   真的强调每个<em>部分   一个页面,然后穷人用户获取一个页面   经常对她或她大喊大叫   基础。

     

我认为这个问题真的是一个问题   想都不用想。如果我设置一个粗体或   用于排版的斜体字体   只有,然后我使用<b><i>。如果   我想要一个单词或短语   像我说的那样强调   然后 - 只有那时 - 我使用   <strong><em>。“

答案 4 :(得分:1)

用于由WYSIWYG编辑器生成的标记。

答案 5 :(得分:0)

&lt; b&gt;和&lt; i&gt;标签没有语义含义,而&lt; strong&gt;和&lt; em&gt;做。如果读者大声朗读文本块,它会对&lt; strong&gt;做出反应。和&lt; em&gt;标签,而&lt; i&gt;和&lt; b&gt;标签将被忽略,处理和纯视觉元素。我倾向于认为&lt; i&gt;和&lt; b&gt;已弃用。

答案 6 :(得分:0)

每当你想做错误的事情时......开个玩笑。

真正的答案永远不会,W3C

已弃用这些标签

答案 7 :(得分:0)

都不是&lt; b&gt;也不是&lt; i&gt;是语义标签,所以纯粹主义者会说不应该使用它们。我已经看到他们的使用是合理的,例如将在线内容放在印刷品中,其中文字以粗体或斜体形式作为惯例,但不是作为加强或强调内容的方式。

简单的例子是,如果你在网上刊登一篇杂志文章,该文章通过标题引用了一本书:你可能想把书名用斜体字来表示,但斜体不是强调的,所以&lt; em&gt;标签是不合适的。你可以使用&lt; i&gt;在这里,但语义上要做的事情就是使用像&lt; span class =“booktitle”&gt;这样的东西。然后使用CSS制作书签斜体。你正在引用一个标题,而不是强调,你不希望屏幕阅读器强调标题。

我个人的意见是不使用&lt; b&gt;或者&lt; i&gt;今天,但使用&lt; strong&gt;或者&lt; em&gt;作为他们的替代品当你不想做任何事情除了粗体或斜体之外的文字同样不正确。

答案 8 :(得分:0)

我认为当你试图使你的标记有意义时,这些很少有用。

然而,有一些新标签可以产生一些相同的结果,但它们提供了更多的语义价值。我喜欢使用&lt; cite&gt;例如,当我指的是一本书的名称时,它会标记,因为它仍然是斜体,但HTML现在带有意义。

还有许多其他语义标记也会影响此处列出的格式:

http://www.w3.org/TR/xhtml2/mod-text.html

答案 9 :(得分:0)

我一直在使用&lt; b&gt;多年来在我的网站上指出关键词。我写了一个小实用程序,它抓取网站寻找&lt; b&gt;标记并将它们添加到索引中。我使用&lt; strong&gt;当我想在不将其添加到索引时加粗单词。我已经使用了这个惯例多年 - 现在已经太晚了。

答案 10 :(得分:0)

可以说,<i>标签仍然有用:表达物种的科学名称(又名拉丁名)。按照惯例,物种的科学名称通常以斜体字表示。 Example。在这种情况下使用<em>在语义上是不正确的,因为一个人不是试图强调名称而是仅仅在视觉上区分它。使用<span class="sci-name">这样的东西可能更合适,但是当人们认为大多数科学名称由italic languages(主要是拉丁语)的单词组成时,<i>标签变得相当丰富方便的解决方案。

答案 11 :(得分:0)

有技术规则,但这是我的两条经验法则:

1)如果你正在写某些东西,如果说出来,你会强调一个词,&lt;强大&gt;和&lt; em&gt;是合适的。 (例如,“你必须 sh * tting 我,Pyle!”)

2)如果您出于技术原因强调单词,但不会强调口语对话中的单词,则&lt; b>和&lt;我&gt;是合适的。 (例如,“他登上RMS 泰坦尼克号然后航行,永远不会再被人看见。”

不要遗漏其他标签,例如&lt;引用&gt;,但是!

答案 12 :(得分:0)

正式,&lt; i /&gt;和&lt; b /&gt;是“表现性的”,不应该使用。虽然许多开发人员认为&lt; em /&gt;和&lt; strong /&gt;是表现性的,它们不是。它们通常是斜体和粗体,但CSS可以(并且应该在适当的时候)改变强调和强度的显示方式。

在&lt; span /&gt;上使用css可以完成类似的事情。标签,许多人认为这是首选的方法,但它不符合规范。

答案 13 :(得分:0)

有些年过去了......

HTML5 (W3C Recommendation)中,这四个元素都不被弃用/过时。

(非规范!)usage summary列出了他们的目的:

  • strong:重要性

  • b:关键字

  • em:强调重点

  • i:替代声音

当然,如果您想使用它们,请始终参考它们的规范性定义(您可以通过单击元素名称找到它们)并验证它们是否适合您的情况。

实施例

The b element could be used for keywords in a text,其他三个元素不合适:这些关键字没有压力(em),也没有偏移(i),也没有必要用于区分它们与样板等(strong)。

The i element could be used for scientific names in Latin,其中strongem不合适。虽然b似乎也合适,但其定义明确排除i处理的案例。

当然,您可以使用其中一些元素。例如,科学名称也可以是文档中的关键字(<b><i>…</i></b>)。

答案 14 :(得分:-3)

为移动设备编写网站时。它们并不总是支持“最新和最好”的标准,折旧但不能从所有现代浏览器中删除,只是占用更少的空间和带宽(虽然理论上流是由网站或无线浏览器压缩的,它不能指望。)

- 亚当