<b>标签和<strong>标签都表示加粗,效果通常是一样的:


<b>义演丁真<strong>义演丁真


类似的还有<em><i>,都表示为斜体。

那么他们有什么区别呢?首先他们并不是在任何情况都一样。如果使用无障碍阅读器阅读网页,strong标签会被重读,而b标签不会。

更深一步来讲,他们的语义不同。b标签表示Bold,即字体加粗(我希望里面的内容用粗体显示),而strong标签表示“强调内容”(这里面内容要着重显示)。

在CSS不流行的年代,HTML本身需要来指定样式。所以b, i, small, sup这类标签就可以指定字体样式和大小,他们的语义就是“设置字体的形态大小(Bold Italic等)”;而strong, em这类标签语义上即为“重点(strong)和强调(emphasis)”,并不一定有什么特定的格式,只是通常strong用粗体,而em用斜体而已。所以他们的显示通常没有区别,意义却有区别:一个是“为了加粗而加粗”,一个是“因为强调而加粗”。

而在CSS流行的年代,加粗,大小等样式管理与HTML没啥关系了,b, i这样的字体样式标签逐渐少见,strong, em这类语义标签备受推崇。一方面,想要粗体斜体自己设置CSS就可以,避免了b的使用;另一方面,着重加强也并非必须要粗体斜体。使用strong可以方便的用CSS更改strong的其他样式。

现代HTML规范是这样描述这些标签的:

  • <strong>:「strong importance for its contents」 着重的内容。
  • <b>:「a span of text to which attention is being drawn for utilitarian purposes without conveying any extra importance and with no implication of an alternate voice or mood, such as key words in a document abstract, product names in a review, actionable words in interactive text-driven software, or an article lede」无强调意味的加粗

什么是无强调意味的呢?比如文章的作者,或者生物双名,再或者书名电影名,他们需要斜体粗体,用strong和em显然就不合语义。从这个角度来讲,markdown中的斜体一般都转换成em而非i,粗体都转化成strong而非b,好像不是一个很合理的选择(毕竟加粗不代表强调嘛)。

常见的字体样式标签:b, i, small, sup, sub, bdo。他们可以用CSS效果完全替代。



拓展阅读:HTML常见的文本语义标签

HTML标签 b 和 strong 的区别的更多相关文章

  1. HTML标签<b>与<strong>以及<i>与<em>的区别

    在一般情况下,<b>和<strong>标签的显示效果一样,<i>和<em>标签的显示效果一样.那么它们的区别在哪呢?我们应该使用哪种标签呢? 在w3sc ...

  2. title与h1的区别、b与strong的区别、i与em的区别?

    title与h1的区别 定义: title是网站标题, h1是文章主题 作用: title概括网站信息,可以直接告诉搜索引擎和用户这 个网站是关于什么主题和内容的,是显示在网页Tab栏里的: h1突出 ...

  3. 探究@property申明对象属性时copy与strong的区别

    一.问题来源 一直没有搞清楚NSString.NSArray.NSDictionary--属性描述关键字copy和strong的区别,看别人的项目中属性定义有的用copy,有的用strong.自己在开 ...

  4. iOS中assign,copy,retain之间的区别以及weak和strong的区别

    @property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Refe ...

  5. assign,copy,retain的区别以及weak和strong的区别

    @property (nonatomic, assign) NSString *title;    什么是assign,copy,retain之间的区别?      assign: 简单赋值,不更改索 ...

  6. iOS开发——基础篇——assign,copy,retain之间的区别以及weak和strong的区别

    @property (nonatomic, assign) NSString *title; 什么是assign,copy,retain之间的区别? assign: 简单赋值,不更改索引计数(Refe ...

  7. em和i , b和Strong 的区别

    这两对标签最大区别就是一个给搜索引擎看的,一个是给用户看的. b标签和strong标签给我们的主观感受都是加粗,但对搜索引擎来说b标签和普通的文字并没有什么区别,而strong标签却是起强调作用的. ...

  8. htm 中 <b>和<strong>的区别

    显示上两者没有任何区别,都是粗体<b>:为了加粗而加粗,推荐使用 css font-weight 属性来创建粗体文字.<strong>:为了强调而加粗,表示十分重要.在网页中使 ...

  9. script标签async和defer的区别及作用

    作用: 1.没有 defer 或 async,浏览器会立即加载并执行指定的脚本,也就是说不等待后续载入的文档元素,读到就加载并执行. 2.async 属性表示异步执行引入的 JavaScript,与 ...

  10. html中<a>标签_top和_parent的区别

    在html中,<a>标签有个target属性,而targe属性有四个值,分别是:_blank._self._top._parent.前两个相信很好理解,第一个就是在新窗口中打开的意思,第二 ...

随机推荐

  1. 如何使用深度学习技术探测代码逻辑死循环 —— 浪潮集团的“公开号CN117271314A”专利

    专利公开号: CN117271314A 新闻链接: https://mbd.baidu.com/newspage/data/landingsuper?context={"nid"% ...

  2. ubuntu18.04系统环境下使用vs code安装pylint检查python的代码错误

    相关: Ubuntu18.04 系统环境下 vscode中忽略pylint某些错误或警告 ============================================ python的代码错 ...

  3. 【转载】 详解nohup /dev/null 2>&1 含义的使用

    原文地址: https://www.jb51.net/article/169837.htm ==================================== 这篇文章主要介绍了详解nohup ...

  4. python语言绘图:绘制一组正态分布图

    代码源自: https://github.com/PacktPublishing/Bayesian-Analysis-with-Python ============================= ...

  5. CF1697C

    C. awoo's Favorite Problem 首先,检查两个字符串中所有字母的计数是否相同. 然后考虑下面的重述.字符串s中的字母 b是静止的.而字母a和c则在字符串中移动.第一种移动是将字母 ...

  6. linux中级——libcurl库访问百度

    libcurl简介: libcurl是一个跨平台的网络协议库,支持http, https, ftp, gopher, telnet, dict, file, 和ldap 协议.libcurl同样支持H ...

  7. 【CMake系列】02-第一个CMake项目

    本节我们用CMake 构建我们的第一个helloword的项目,从更细的粒度上了解CMake在做什么,对编写CMakeLists.txt 进入初步引入 本专栏的实践代码全部放在 github 上,欢迎 ...

  8. 智能指针相关:enable_shared_from_this()在开发中的常见应用

    类中使用shared_ptr()的问题 当我们先定义一个指针,然后再用这个指针构造两个智能指针 int main() { int* pt = new int(); std::shared_ptr< ...

  9. liunx下安装Nginx

    Linux下nginx的安装以及环境配置 https://blog.csdn.net/qq_42815754/article/details/82980326 第一步:下载nginx压缩包 在这里可以 ...

  10. 初三奥赛模拟测试1--T1回文

    初三奥赛模拟测试1--\(T1\)回文 HZOI 题意 给定一个 \(n \times m\) 的,由字符组成的矩阵 \(A\) , 问你由 \(( 1 , 1 )\) 开始,点 \(( i , j ...