strong表示内容重要性,具有语义强调功能,影响可访问性、SEO和辅助技术识别;b仅实现纯视觉加粗,无任何语义含义。

strong 和 b 都会让文字变粗,但语义完全不同:用错一个,可能让屏幕阅读器读错重点、搜索引擎降权、甚至违反无障碍规范。
strong 是“内容重要性”标签,不是“加粗开关”
浏览器默认把 strong 渲染为粗体,但这只是视觉副作用;它的核心作用是向辅助技术、爬虫和开发者传递“这段信息不能忽略”。比如表单提交前的警告:<strong>删除后无法恢复</strong>,读屏软件会加重停顿,Google 也可能提升该文本在页面中的语义权重。
- 适合场景:必填提示、权限拒绝原因、操作后果警告、法律条款关键主体
- 错误用法:
<strong>首页</strong>放在导航栏(nav里已有结构语义,再套strong属于语义冗余) - 嵌套无效:
<strong><strong>危险</strong></strong>不会增强重要性,反而破坏语义层级 - CSS 可以把它设成细体、红色或带下划线——只要语义不变,视觉怎么调都合法
b 只是“视觉加粗”,无任何语义含义
b 的唯一职责就是让文字看起来粗一点,不暗示重要、不触发读屏重音、不影响 SEO。它适用于那些纯靠样式区分、但逻辑上并无特殊地位的内容,比如产品名里的“New”徽章、菜单项中需要突出的关键词。
- 典型用例:
<b>Beta</b> 版本、点击 <b>立即下载</b> 开始安装 - 不能替代
strong:把“密码错误”写成<b>密码错误</b>,读屏软件不会提醒用户这是关键反馈 - 与
i对称:i表示“斜体显示”,b表示“粗体显示”,二者都不参与文档逻辑结构
为什么很多人混淆?因为浏览器默认样式一样
现代浏览器对 strong 和 b 的默认 CSS 都是 font-weight: bold,导致肉眼难分。但一旦你用 CSS 覆盖样式,区别立刻暴露:
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
立即学习“前端免费学习笔记(深入)”;
strong { font-weight: normal; color: #d32f2f; text-decoration: underline; }
b { font-weight: bold; }
此时 strong 文字变成红+下划线+正常粗细,b 还是纯粗体——可读性、SEO、无障碍支持全靠 HTML 标签本身,跟最终长什么样无关。
容易被忽略的关键点
真正难的不是记住定义,而是判断“这句话值不值得用 strong”。一个简单检验法:把它删掉,用户是否可能跳过关键风险、误解操作后果、或漏掉法律责任主体?如果是,就该用 strong;如果只是想让它“更醒目一点”,那 b 或 CSS 类才是正解。


















