<;b>;vs<;span>;在HTML5中
我一直很难决定何时使用b和何时使用span。元素的新语义似乎很模糊<;b>;vs<;span>;在HTML5中,html,semantic-markup,Html,Semantic Markup,我一直很难决定何时使用b和何时使用span。元素的新语义似乎很模糊 b元素表示关注的文本范围 为实用目的而绘制,没有传达任何额外的重要性 而且没有暗示另一种声音或情绪 听起来像是当你不能使用strong、em或i时使用的标签 当没有其他元素可用时,应将b元素用作最后手段 更合适 但是我们已经得到了当措辞内容还没有合适的标签时的提示 span元素本身没有任何意义。。。它代表了它的价值 孩子们 这里有一个示例使用列表 文档摘要中的关键词,评论中的产品名称, 交互式文本驱动软件或文章中的可操作词语 莱
b元素表示关注的文本范围 为实用目的而绘制,没有传达任何额外的重要性 而且没有暗示另一种声音或情绪 听起来像是当你不能使用strong、em或i时使用的标签 当没有其他元素可用时,应将b元素用作最后手段 更合适 但是我们已经得到了当措辞内容还没有合适的标签时的提示 span元素本身没有任何意义。。。它代表了它的价值 孩子们 这里有一个示例使用列表 文档摘要中的关键词,评论中的产品名称, 交互式文本驱动软件或文章中的可操作词语 莱德 但我找不到一个基本的原则,把它们联系在一起,除了给它们加粗。甚至还提到了风格:
b元素表示在文体上偏移的文本范围 从普通的散文[加上强调语] 样式是用于CSS的。我们还建议使用类来显示实际含义 作者可以使用b元素上的class属性来确定原因 正在使用该元素 这听起来像是使用太分散,无法单独按标签进行分组。我还可以使用类来解释span的语义 跨度元素。。。与全局变量一起使用时可能会很有用 属性,例如class、lang或dir 例子 如果我想要这个: 你在CS 101决赛中的得分是42% 我写什么
Your score for <b>CS 101 Final</b> is 42%.
你在CS 101决赛中的得分是42%。
或
你在CS 101决赛中的得分是42%。
或者对于这个:
回答:42
是吗
<b>Answer</b> 42
答案42
或
答案42
(它只有一个键值对,所以定义列表不适用。)
我不仅仅对知道单个示例的正确标记感兴趣。我想知道为什么他们是正确的。我使用什么标准来决定b或span标记?第一个示例非常简单。你试图让“CS 101决赛”吸引眼球,因为它比“你的分数”更重要。那就是
你在CS 101决赛中的得分是42%。
有了
,您就不会试图吸引眼球。你希望整篇文章都能被均匀地阅读,但你却把某些单词和短语标记为对读者有用(实用目的)。坦率地说,这没有多少用处。该规范给出了冒险游戏和报告中关键字的示例,但要找到许多用途并不容易
第二个例子更为棘手。在这里,“答案”在风格上被抵消了。“答案”一词绝对不比实际答案文本更重要,也不需要出于任何其他原因引起读者的特别注意。它只是被标记为与实际答案文本不同。然而,该规范在“没有专用元素的常用习惯用法”一节中建议在对话中使用
标记说话人,使用它可以被视为类似于此。但基本上它只是样式,所以使用类的
可能是最好的选择
我使用什么标准来决定b或跨度标记
从上面可以看出,这是一个消除的过程。
或
或
是否合适?是-使用它们。否-是
还是
合适?是-使用它们。不,那么使用
span
就没有任何意义。从语义上讲,是否存在span
元素并不重要。因此,问题不应该是何时使用b
与span
,而应该是:我应该使用b
?(在许多情况下,您可能希望使用b
而不需要样式挂钩,因此如果b
不合适,则绝对不需要span
。)
为了决定b
是否合适,我认为想象一个使用语义标记的智能用户代理可能会有所帮助。如果每个人都能正确使用HTML5,那么这样的用户代理可以从标有b
的内容中推断出什么
我认为本文中提到的示例用例给出了一个非常好的想法:
- 文献摘要中的关键词
- 评论中的产品名称
- 交互式文本驱动软件中的可操作词
- 一篇文章
link
与a
相同)
不要让你被造型需求所误导。虽然在许多情况下,黑体字可能是一种合适的样式,但大多数情况下,我从未对
b
使用任何特殊样式,我的个人设计准则是:
(示例)
应仅用于装饰目的
也就是说,内容或多或少不会从较重的字体中获得任何好处,但如果有了它,在该位置看起来可能会更好。b元素表示一系列文本,这些文本的注意力是出于实用目的而引起的,没有传达任何额外的重要性,也没有暗示其他声音或情绪,例如文档摘要中的关键词、评论中的产品名称、交互式文本驱动软件中的可操作词语,
<b>Answer</b> 42
<span>Answer</span> 42