em标签用于语义化强调而非单纯斜体,传达需重读的语气;strong表更高重要性,嵌套em不宜超三层,滥用或CSS隐藏会影响可访问性。

em 标签不是为了加斜体,而是传递语调强调
浏览器默认把 em 渲染成斜体,但这只是表象;真正作用是向屏幕阅读器、搜索引擎和未来解析工具传达「这句话里这个词需要被重读」——就像人说话时抬高音调或放慢语速。如果你只想要斜体效果,该用 i 或 CSS 的 font-style: italic。
em 和 strong 的语义强度有实际差别
两者都算强调,但 em 是语气层面的轻度强调(比如“我确实没看到通知”),而 strong 表示内容重要性更高(比如“密码strong错误,请重试”)。屏幕阅读器对 strong 通常会加重、降调甚至停顿,em 则更多是升调或延长发音。滥用 strong 会让辅助设备失去重点判断依据。
嵌套 em 会改变语调层级,但别超过三层
em 支持嵌套,每多一层,语调变化越明显。例如:
<p>这个功能<em>几乎</em>兼容所有<em>主流</em>浏览器</p><div class="aritcle_card flexRow artxards"> <div class="artcardd flexRow"> <a class="aritcle_card_img" rel="nofollow" href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器"><img src="https://img.php.cn/upload/skill/001/246/273/6adaf20d3191a227.jpg" alt="DeepBI DHTML 页面生成器" onerror="this.onerror='';this.src='/static/lhimages/moren/morentu.png'" ></a> <div class="aritcle_card_info flexColumn"> <a rel="nofollow" href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器" class="overflowclass">DeepBI DHTML 页面生成器</a> <p class="overflowclass">生成可在 deepbi 沙箱 iframe 内运行或作为独立文件运行的交互式 HTML 页面,使用 `window.deepbi` JS SDK 实现数据查询、空间管理、文件浏览及用户操作。当用户提出以下需求时启用该能力: - 创建 KPI 仪表盘、数据表格、文件浏览器、成员列表、管理页面; - 明确要求“转成 dhtml”、“转译成 HTML”、“把 XX 页面转成……”、“控制台页面”、“管理后台”、“DeepBI 页面迁移”; - 提及位于 `apps/console/src/featur</p> </div> <a rel="nofollow" href="/xiazai/skill12116" title="DeepBI DHTML 页面生成器" class="aritcle_card_btn flexRow flexcenter"><b></b><span>下载</span> </a> </div> </div>
但嵌套超过三层(如 xxx)会导致语义混乱,部分旧版读屏软件可能直接忽略内层或报错。现代浏览器虽能渲染,但可访问性审计工具(如 axe、Lighthouse)会标为「语义冗余」。
em 不影响 SEO 排名,但影响可访问性评分
搜索引擎不会因为用了多少个 em 就给页面提权,但它会识别出你是否在关键术语(如首次出现的「DOM 树」)、操作提示(如「请务必确认邮箱」)中合理使用了强调。Lighthouse 的「Accessibility」分项里,em 使用不当(比如包裹整段话、或和 strong 混用无规律)会直接扣分。更隐蔽的问题是:CSS 如果把 em 设为 display: none 或 visibility: hidden,屏幕阅读器仍会朗读,造成信息泄露。
前端入门到VUE实战笔记:立即使用
在学习笔记中,你将探索 前端 的入门与实战技巧!










