<span>和<b>与具有良好指定的CSS类有什么区别吗?</b> </span>

时间:2012-04-20 16:30:55

标签: css html5 html

基本上,我的问题是,这个HTML文档正文中的两行之间有什么区别?

<html>
<head>
 <style>
  .test {color:green; font-weight:normal}
 </style>
</head>
<body>

<b class="test">Test with b tag</b><br />
<span class="test">Test with span tag</span><br />


</body>
</html>

4 个答案:

答案 0 :(得分:4)

<b>(或更好的<strong>)包含应突出显示文本的语义信息(以粗体显示)。 <span>没有相同的含义。如果您从文档中停用CSS样式,您会看到<b>文字仍以粗体显示,但<span>仍为正常文字。

这种区别对于(通常)可以将信息传达给用户的屏幕阅读器尤为重要。使用带有类的跨度不会带来这样的信息。

这并不意味着您应该始终使用<strong><em>:如果目的是纯粹的风格,而您没有强调文字,那么最好使用类。

答案 1 :(得分:2)

<b><strong>具有语义含义“应以粗体显示”,而<span>是通用内联元素。

但从技术角度来看,如果应用适当的CSS,这些元素之间没有真正的差异。

答案 2 :(得分:2)

根据功能上没有这样的差异,但有一些差异,例如<b>通常bold使用css中没有定义font-weight:bold的文本。它可以轻松打印{ {1}}。但是对于bold,您必须定义CSS。

现在问题哪个好。我的回答是 span ,因为 span 是为多重样式创建的,但其他标记如<span><b><strong>,{{1在不使用样式的情况下为表示属性创建了等。因此,对于系统标记,如果您只想<i>该文字,则<em>是好的,但如果您需要其他属性,例如bold<b>bold然后最好使用

根据W3C

  

b元素表示与其周围偏移的文本范围   内容没有传达任何额外的重点或重要性,并为   传统的印刷表示是粗体文字;对于   例如,文档摘要中的关键字,或者文档中的产品名称   审查。

答案 3 :(得分:0)

它们可能看起来不同,因为它们已应用默认样式。由于您在添加样式之前未删除所有样式,因此它们看起来会有所不同。浏览器之间也可能有所不同。