在HTML/XHTML中<b>和<strong>, <i>和<em>之间的区别是什么?什么时候使用它们?
当前回答
我同时使用<strong>和<b>,实际上,正是因为这个回复线程中提到的原因。有些时候,某些文本加粗看起来更好,但在语义上并不一定比句子的其他部分更重要。下面是我现在正在做的一个例子:
"检索<strong>所有</strong>书籍关于<b>长曲棍球</b>。"
在这句话中,单词“all”非常重要,而“lacrosse”就不那么重要了——我只是想把它加粗,因为它代表一个搜索词,所以我想在视觉上进行一些分离。如果你正在用屏幕阅读器浏览页面,我真的不认为它需要特意强调“长曲棍球”这个词。
我倾向于想象大多数web开发人员使用其中的一种,但两者都很好-<b>绝对不会被弃用,就像一些人声称的那样。对我来说,这只是视觉吸引力和意义之间的细微差别。
其他回答
我同时使用<strong>和<b>,实际上,正是因为这个回复线程中提到的原因。有些时候,某些文本加粗看起来更好,但在语义上并不一定比句子的其他部分更重要。下面是我现在正在做的一个例子:
"检索<strong>所有</strong>书籍关于<b>长曲棍球</b>。"
在这句话中,单词“all”非常重要,而“lacrosse”就不那么重要了——我只是想把它加粗,因为它代表一个搜索词,所以我想在视觉上进行一些分离。如果你正在用屏幕阅读器浏览页面,我真的不认为它需要特意强调“长曲棍球”这个词。
我倾向于想象大多数web开发人员使用其中的一种,但两者都很好-<b>绝对不会被弃用,就像一些人声称的那样。对我来说,这只是视觉吸引力和意义之间的细微差别。
B或I表示您希望文本显示为粗体或斜体。Strong或em意味着你希望文本以一种用户理解为“重要”的方式呈现。默认是将strong显示为粗体,em显示为斜体,但一些其他区域性可能使用不同的映射。
就像程序中的字符串一样,b和i将被“硬编码”,而strong和em将被“本地化”。
虽然<strong>和<em>在语义上当然更正确,但对于客户编写的内容,似乎有明确的合法理由使用<b>和<i>标记。
在这些内容中,单词或短语可能会加粗或斜体,我们通常不需要分析这种加粗或斜体的语义推理。
此外,这些内容可能是指粗体和斜体的单词和短语,以传达特定的含义。
例如,英语考试题目要求学生替换黑体字。
<b>和<i>,没有实际的语义意义(就像@splattne指出的那样)是正确的,在很久以前。在现代HTML5 (<!DOCTYPE html>)它们确实有意义。查看以下链接。
语义(来自MDN)
<b>:引起注意元素 摘要中的关键字 产品名称。
<p>Here at company XYZ, we use <b>HTML</b> and <b>Javascript</b>.</p>
<i>: Idiomatic Text元素 不同的声音或情绪 分类学名称(如“智人”属和种) 来自另一种语言的惯用术语(如“等等”) 技术术语
<p>I <i>did</i> tell him, to arrive on time for the meeting.</p>
<b> vs. <strong>
认识到这两者在HTML5中都是有效的语义元素,并且它们在大多数浏览器中都具有相同的默认样式(粗体)可能会有所帮助(尽管一些较老的浏览器实际上下划线<strong>)。每个元素都是在特定类型的场景中使用的,如果你想要加粗文本作为装饰,你应该实际使用CSS font-weight属性。源
<i> vs. <em>
<em>元素表示其内容的重音强调,而<i>元素表示与普通散文分开的文本。源
我的2美分
我个人更喜欢<b>和< I >而不是<strong>和<em>。
它们更短,从开发人员的角度来看,它们的语义也很有意义。 我不知道今天的屏幕阅读器是否能和它们一起工作。如果没有,我想他们最终会的。A18n是一个很难的主题,我只是遵循文档的引导。MDN说我可以用它们,所以我就用了。
HTML格式元素:
HTML还定义了特殊元素,用于定义具有特殊含义的文本。 HTML使用像<b>和<i>这样的元素来格式化输出,比如粗体或斜体文本。
HTML粗体和强格式:
HTML <b>元素定义了粗体文本,没有任何额外的重要性。
<b>This text is bold</b>
HTML <strong>元素定义了强文本,并添加了语义 “强大”的重要性。
<strong>This text is strong</strong>
斜体和强调格式:
HTML <i>元素定义了斜体文本,没有任何额外的内容 的重要性。
<i>This text is italic</i>
HTML <em>元素定义了带有附加语义的强调文本 的重要性。
<em>This text is emphasized</em>
推荐文章
- 使伸缩项目正确浮动
- 形式内联内的形式水平在twitter bootstrap?
- 自定义元素在HTML5中有效吗?
- 如何触发自动填充在谷歌Chrome?
- 创建圈div比使用图像更容易的方法?
- 为什么Chrome浏览器不正确地确定页面是在不同的语言,并提供翻译?
- 在网页上用鼠标模拟震颤(例如帕金森病)?
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- 如何改变文本区域的边框颜色:焦点
- 我如何设置背景颜色为文本的宽度,而不是整个元素的宽度,使用CSS?
- 如何删除和清除所有的本地存储数据
- 强制打开“另存为…”弹出打开文本链接点击PDF在HTML
- 如何修改标签文本?
- 在HTML中还有其他有用的空格码吗,比如半空格的 , em-spaces, en-spaces等等?
- 输入触发器按钮单击