在HTML/XHTML中<b>和<strong>, <i>和<em>之间的区别是什么?什么时候使用它们?
当前回答
<b>和<i>都与风格有关,而<em>和<strong>是语义的。在HTML 4中,前者被归类为字体样式元素,后者被归类为短语元素。
正如您正确指出的,<i>和<em>通常被认为是相似的,因为浏览器通常以斜体显示它们。但根据规范,<em>表示强调,<strong>表示更强调,这很清楚,但经常被误解。另一方面,何时使用<i>或<b>之间的区别实际上是一个风格问题。
其他回答
正如其他人所说,<b>和<i>是显式的(即。"使此文本加粗"),而<strong>和<em>是语义的(即:“应该强调这篇文章”)。
在现代网络浏览器的环境中,很难看出两者的区别(它们似乎产生了相同的结果,对吧?),但想想为视力受损的人设计的屏幕阅读器。如果屏幕阅读器遇到<i>标记,它将不知道该做什么。但是如果它遇到<em>标签,它就知道应该向侦听器强调其中的内容。这就是实际的区别。
<i>, <b>, <em>和<strong>标签传统上具有代表性。但在HTML5中,它们被赋予了新的语义含义。
<i>和<b>在HTML4中用于字体样式。<i>为斜体,<b>为粗体。在HTML5中,<i>标签具有“替代声音或情绪”的新语义含义,<b>标签具有风格上偏移的含义。
<i>标签的使用例子有:分类名称、技术术语、来自另一种语言的惯用短语、音译、一种思想、西方文本中的船名。例如:
<p><i>I hope this works</i>, he thought.</p>
<b>标记的使用示例包括文档摘要中的关键字、评论中的产品名称、交互式文本驱动软件中的可操作单词、文章导语。
下面的示例段落在风格上与后面的段落有所偏移。
<p><b class="lead">The event takes place this upcoming Saturday, and over 3,000 people have already registered.</b></p>
<em>和<strong>在HTML4中具有强调和强强调的含义。但在HTML5中,<em>表示强调,<strong>表示强烈的重要性。
在下面的例子中,在阅读之前的单词时应该会有语言上的变化。
<p>Make sure to sign up <em>before</em> the day of the event, September 16, 2016</p>
在同样的例子中,我们可以使用<strong>标记,如下所示。
<p>Make sure to sign up <em>before</em> the day of the event, <strong>September 16, 2016</strong></p>
重视活动日期。
MDN裁判:
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/b
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/i
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/em
https://developer.mozilla.org/en-US/docs/Web/HTML/Element/strong
只有在使用CSS样式类不方便或不可能的情况下才使用它们(比如博客系统,只允许在帖子中使用一些标签,最终嵌入样式)。另一个原因是支持非常老的浏览器(一些移动设备?)或原始的搜索引擎(给<b>或<strong>标签加分,而不是分析CSS样式)。
如果你可以定义CSS样式,那就使用它们。
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>
<em>和<strong>消耗的带宽大于<i>和<b>。
它们还需要更多的输入(如果不是自动生成的话)。
它们还会让编辑器屏幕上充斥着更多的文本。我似乎记得程序员喜欢小一点的源文件,如果它们是相同的。(让我们面对现实吧,它们是一样的。是的,确实存在“技术”差异(<i>咳嗽</i>,咳咳,不好意思),但这基本上是假的。)
对于上面的任何标记,如果您需要它们与默认呈现不同,您可以使用样式表自定义它们的显示方式。
推荐文章
- 使伸缩项目正确浮动
- 形式内联内的形式水平在twitter bootstrap?
- 自定义元素在HTML5中有效吗?
- 如何触发自动填充在谷歌Chrome?
- 创建圈div比使用图像更容易的方法?
- 为什么Chrome浏览器不正确地确定页面是在不同的语言,并提供翻译?
- 在网页上用鼠标模拟震颤(例如帕金森病)?
- Bootstrap抛出Uncaught错误:Bootstrap的JavaScript需要jQuery
- 如何改变文本区域的边框颜色:焦点
- 我如何设置背景颜色为文本的宽度,而不是整个元素的宽度,使用CSS?
- 如何删除和清除所有的本地存储数据
- 强制打开“另存为…”弹出打开文本链接点击PDF在HTML
- 如何修改标签文本?
- 在HTML中还有其他有用的空格码吗,比如半空格的 , em-spaces, en-spaces等等?
- 输入触发器按钮单击