使用它们本身并没有“骗局”。将它们用于错误的事情有一个“骗局” 。过去它们经常被用于网页中的错误事情,但这并不意味着没有正确的事情。
<i>
语义上等价于<span style="font-style: italic">
:即没有语义内容。里面的一个词<i>...</i>
并不重要;网页文本到语音转换器不应该(*)以强调的语气阅读该词。
当你想强调一个词时,比如这句话中的“肯定”,你绝对应该使用<em>
. 这是常见的情况。但是,当您只想要一个排版细节时,例如仅出于视觉目的将文本块斜体,或者总是将您的网站称为“Things World!”的排版怪癖,<em>
是不合适的,您会想要无语义的版本(the<i>
或 the <span>
)。
同样,<strong>
也适用于上面的“for the wrong thing”,因为它是要强调的。如果您只是希望部分文本以粗体呈现,而不暗示它比周围的文本更重要,那么您可以在另一个元素(如or )上使用<b>
or 样式。<span>
<div>
<i>
and的一个常见用途<b>
是当您从无语义的来源获取文本时。特别是从文字处理器或类似应用程序中导入内容是很常见的,在这些应用程序中没有强调的概念,只有“斜体”和“粗体”。在这种情况下<i>
和<b>
(或跨度等价物)是合适的,因为您不知道这些文本样式背后的语义意图是什么;该信息已经丢失。
如果您将所有斜体自动转换为<em>
许多工具所做的那样,您可能会标记不代表重点的斜体。例如对其他作品的引用,最好用 标记<cite>
,或者来自另一种语言(如拉丁语或法语)的单词/短语,最好用标记<span lang>
(以及相关的风格来告诉它来自另一种语言的单词应该是斜体) .
<small>
并且<big>
理论上可能是相同的情况,但是虽然导入的带有粗体/斜体的文本很常见,但导入的大小文本却不是。因此,没有人使用这些标签,您通常最好使用普通的 CSS 字体大小样式。
<br>
并且<hr>
可以说与上述标签不同。换行符可能是内容的重要组成部分(例如,在地址中分隔行),水平线表示文本部分之间的分隔比单纯的段落更强。当然,如果你用它<br>
来创建假段落,那么你做错了(你是 David Siegel 大约在 1998 年),并且使用<hr>
只是为了得到一个不错的小线,这也是不对的。
(*:说明性示例;找出真正的屏幕阅读器实际上做了什么留给读者作为练习。)