【大白话前端 06】HTML文本强调标签

举报
喝水的长颈鹿 发表于 2026/03/06 10:27:08 2026/03/06
【摘要】 新手写网页,为了让字变粗,随手就是一个 <b>,为了倾斜就是一个 <i>。但这在现代前端开发中是一个巨大的坑。在 HTML 的早期,没有 CSS,标签确实是用来控制样式的。但随着标准演进,HTML 只负责声明“语义(这是什么)”,长什么样全部交给了 CSS。如果你还在用标签来做“纯视觉展示”,不仅会破坏代码规范,还会导致屏幕阅读器(视障用户工具)和搜索引擎(SEO)无法正确识别网页的重点。?...

新手写网页,为了让字变粗,随手就是一个 <b>,为了倾斜就是一个 <i>。但这在现代前端开发中是一个巨大的坑。

在 HTML 的早期,没有 CSS,标签确实是用来控制样式的。但随着标准演进,HTML 只负责声明“语义(这是什么)”,长什么样全部交给了 CSS。如果你还在用标签来做“纯视觉展示”,不仅会破坏代码规范,还会导致屏幕阅读器(视障用户工具)和搜索引擎(SEO)无法正确识别网页的重点。

💡 核心定律:永远不要为了改变字体样式(加粗、斜体)去使用 HTML 标签。如果你只想改变外观,请使用 CSS。

一、语气强调:<em> (Emphasis)

<em> 用于改变句子的重音位置,从而改变句子的确切含义。默认表现为斜体。

就像我们日常说话,加重不同的字,意思就截然不同:

  • 原句:我没有说他偷了钱。
  • 强调“我”:<em>我</em>没有说他偷了钱。(潜台词:可能是别人说的。)
  • 强调“偷”:我没有说他<em>偷</em>了钱。(潜台词:他可能是借的。)

二、重要性强调:<strong>

<strong> 用于标记极其重要、严重警告的信息。默认表现为加粗。

屏幕阅读器遇到 <strong> 时,会明显加重语气朗读,提醒用户这部分绝对不能忽略。

<!-- ✅ 正确做法:必须重视的安全警告 -->
<p>这个液体<strong>有剧毒</strong>,千万别碰!</p>

<!-- ✅ 正确做法:重要信息嵌套语气强调,双层重音 -->
<p>这个液体<strong>有剧毒——喝了会<em></em></strong></p>

三、被降级的“视觉/语境”标签:<i><b><u>

这三个标签曾经代表纯样式的斜体、加粗和下划线。在 HTML5 中,它们被赋予了新的、更微弱的语义,不再代表重点或强调。

1. <i>:语境切换 (Idiomatic Text)

不再是单纯斜体,而是表示这段文本属于另一种语境,与周围的文字区分开来。
适用场景:外文单词、科学学名、人物内心的想法。

<!-- ✅ 正确做法:标记外文语境 -->
<p>菜单上有<i lang="fr">soupe à l'oignon</i>(法语:洋葱汤)。</p>
<!-- ❌ 错误示范:为了强调语气使用 i -->
<p><i>真的很开心</i></p>

2. <b>:单纯视觉突出 (Bring Attention To)

不再是重要警告,而是表示需要视觉上醒目,但不具备任何额外的重要权重
适用场景:文档里的关键词、产品名、摘要里的导读词。

<!-- ✅ 正确做法:普通的关键词高亮 -->
<p>我买了新电脑:<b>MacBook Air M2</b></p>
<!-- ❌ 错误示范:把警告信息写成 b(读屏软件会像读废话一样读过去) -->
<p>前方施工,<b>请绕行</b></p>

3. <u>:特殊异常标记 (Unarticulated Annotation)

不再是普通的下划线,而是用于指出文本中存在某种非正常的特殊情况
适用场景:拼写错误的单词。

⚠️ 注意事项:在网页中,带下划线的文字约定俗成代表“超链接”。除非是标记拼写错误,否则绝对不要使用 <u> 或者给普通文字加下划线,这会误导用户认为这是一个可点击的链接。

<!-- ❌ 错误示范:为了强调随便加下划线,用户点击没反应被气死 -->
<p>今天超市的鸡蛋<u>全部免费送</u></p>

<!-- ✅ 正确做法:用来标示“错别字”这种非正常文本,并配合 CSS 改成红色波浪线 -->
<p>我昨天<u style="text-decoration: wavy red underline;"></u>记带伞了(注:作者打错字了,原意是“忘”)。</p>

效果:

四、已被废弃的“纯样式标签”

以下标签因为百分之百只有样式、毫无语义,已经被 HTML 标准彻底废弃。现在开发中严禁使用。

废弃标签 旧作用 现代替代方案(CSS 或语义标签)
<big> 字变大 font-size: 1.2em
<font> 改字号颜色 color: red; font-size: 16px
<strike> 加删除线 <s> (表示已过期信息) 或 text-decoration: line-through

五、总结与下一步

📝 速记总结

  • <strong> = 真的非常重要(必须警惕/重视)。
  • <em> = 改变句子的重音位置(从而改变含义)。
  • <b> / <i> = 仅仅需要视觉高亮或标明特殊语境,但不改变重要性。
  • 想改样式(变大、加粗),一律使用 CSS。

到目前为止,我们一直在死抠“单段文字”的细节:用 h1 写标题,用 p 写段落,用 strong 抓重点。

但是,如果在网页上遇到“一大串同类信息”该怎么排版?比如,教用户做菜的 10 个步骤,或是电商网站顶部的 5 个导航按钮?难道就是敲 10 个段落标签然后再手动标上 1. 2. 3. 吗?

当然不是。在下一章《07. HTML的 3 种列表:ul、ol、dl》中,我们将讲解如何用最纯粹的机器语言,去管理网页里的“步骤逻辑”和“并列数据”。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。