html中的<b>和<strong>有什么区别呢?

panbr
  • 159

今天面试被问到html中的b和strong标签有什么区别,傻眼了,求高人指点

回复
阅读 4.7k
7 个回答
✓ 已被采纳

两者虽然在网页中显示效果一样,但实际目的不同。

<b>这个标签对应 bold,即文本加粗,其目的仅仅是为了加粗显示文本,是一种样式/风格需求;
<strong>这个标签意思是加强,表示该文本比较重要,提醒读者/终端注意。为了达到这个目的,浏览器等终端将其加粗显示;

总结:<b>为了加粗而加粗,<strong>为了标明重点而加粗。

b已经不提倡使用了,因为认为他应该归到css样式当中。
现在使用更加语义化的strong标签。

早年HTML是直接用标签和属性来表达样式的,<b>所代表的bold粗体就是一个例子,此外还有<i>也就是italic斜体,当然了这个方式现在的浏览器仍然也还兼容

后来网站网页越做越复杂,为了让页面结构更加清晰,所以引入了层叠样式表CSS让内容和表现分离开来,这时候<strong><em>等不直接表示样式,仅表达结构的标签应运而生,开发者可以根据自己的需要通过CSS来定义网页的重点应该怎样表达,而不仅仅是加粗或者斜体。用户端也可以自己来定义样式表,为重点内容配置一个更加显眼的突出方式而不仅仅是加粗

另外还有一个很重要的点是可读性(可访问性)的优势,对于某些视觉障碍的用户来说,单纯的表达加粗对于他们来说是不够的,因为他们甚至有可能不理解这个概念(全盲的人),但是标识为重点,为视障人士设计的浏览器/阅读器等就可以有他们正确的方式来提醒用户这块区域是重点内容

总而言之,<strong>是个语义上的概念,表达的是强调,浏览器默认表现为加粗。<b>则只是加粗。

PS: 一度认为是下一代HTML的XHTML其实主张删除所有的这种表达样式的标签,包括不限于<b>, <i>, <color>, <center>等等。不过后来HTML5成为了正式标准,XHTML的一些主张被合并进入HTML5,但是不包括这条

最基本的问题了,类似的还有 em 和 i 标签

b只是加粗,strong还带强调

razn
  • 1
新手上路,请多包涵

b是字体加粗,而strong是从文章来看,这是你的重点。

clipboard.png

clipboard.png

是样式带语义

宣传栏