应优先使用<strong>和<em>等语义化标签;<strong>用于传达重要性,影响屏幕阅读器和SEO;<del><ins>表编辑语义,非状态展示;<sub><sup>不可被CSS完全替代;所有标签均不自动换行或加空格。

<strong> 和 <em> 是最该优先用的格式化标签,其余多数能用 CSS 替代,但语义明确时仍建议保留原生标签。
什么时候必须用 <strong> 而不是 <b>
当文本需要传达「重要性」而非仅视觉加粗时,<strong> 才是正确选择。比如错误提示、操作警告、关键参数值——这些内容会被屏幕阅读器加重朗读,而 <b> 只触发加粗样式,无语义权重。
- 搜索引擎和辅助技术依赖
<strong>判断内容优先级,<b>不参与此逻辑 - 若只是为配合设计稿临时加粗(如品牌名、栏目标题),且无语义强调需求,可用
<b>,但应优先考虑用 CSS 的font-weight -
<strong>可嵌套:<strong>最高优先级<strong>次级强调</strong></strong>,浏览器会逐层提升语音音调
<del> 和 <ins> 不只是画线,它们有明确的编辑语义
<del> 表示内容已被移除但保留在文档中供参考;<ins> 表示新增内容。两者默认渲染为删除线/下划线,但关键是它们会出现在 DOM 的变更历史里。
将调研报告、方案对比、数据分析、需求梳理、会议纪要、设计说明、代码评审、学习笔记等任务产物输出为可在浏览器直接打开的单文件 HTML,替代 Markdown 作为最终交付物。Markdown 在信息密度、视觉清晰度和可分享性上已跟不上 AI 产物的丰富度,HTML 能同时承载排版、表格、SVG 等。
- 不要用
<del>去模拟“已售罄”或“过期价”,那是状态展示,应结合aria-hidden+ CSS 控制样式 -
<ins>的datetime属性可记录插入时间:<ins datetime="2026-09-28T14:30">新条款生效</ins> - 连续多次修改时,避免嵌套
<del><ins>...</ins></del>,这会让语义混乱;应改用版本标记或后端 diff 渲染
<sub> 和 <sup> 在数学、化学、脚注中不可被 CSS 完全替代
CSS 的 vertical-align: sub/sup 只控制位置,不携带语义。而 <sub> 和 <sup> 明确告诉解析器这是下标/上标字符,影响排版引擎对行高、基线、字体缩放的处理。
立即学习“前端免费学习笔记(深入)”;
- 化学式
H<sub>2</sub>O必须用<sub>,否则语音阅读器会读成 “H 2 O”,而非 “H₂O” - 脚注编号
见第3条<sup>1</sup>应搭配<footer>或<aside>使用,不能只靠font-size: 0.7em; vertical-align: super; - 避免对中文数字用
<sup>做角标(如“第①条”),中文语境下更推荐 Unicode 上标数字或图标替代
真正容易被忽略的是:所有这些标签都**不自动换行或添加空格**。比如 <strong>价格</strong><del>¥199</del><ins>¥149</ins> 会紧贴显示为「价格¥199¥149」,需手动加空格或用 CSS white-space 控制。语义正确只是第一步,视觉和可访问性要同步验证。


















