语义化标签的核心是传达内容结构与含义,而非控制样式:h1–h6 表示层级关系,p 用于语义段落,strong/em 表达强调意图,hr/br 各有明确逻辑用途,所有标签共同支撑可访问性与seo。

标题标签 <h1></h1> 到 <h6></h6>:结构优先,不是字号开关
很多人一上来就用 <h1></h1> 做大字、<h6></h6> 做小字,这是错的。它们本质是语义层级:一个页面只能有一个 <h1></h1>(主标题),后续用 <h2></h2> 表示一级子节,<h3></h3> 表示二级子节……跳级(比如 <h1></h1> 后直接 <h4></h4>)会破坏屏幕阅读器逻辑和 SEO 权重分配。
浏览器默认样式只是附带效果,真正该控制字号请用 CSS 的 font-size,而不是靠换标签“凑大小”。
<p></p> 段落标签:块级分隔,别当换行符用
<p></p> 的核心作用是包裹一段有完整语义的文本内容,它自带上下外边距(margin),视觉上形成段落间距。常见错误包括:
- 把每行文字都包一层
<p></p>—— 这会导致间距过大、结构混乱; - 在
<p></p>里塞<div> 或其他块级元素 —— HTML 规范不建议,部分旧浏览器会自动闭合 <code><p></p>,造成意外嵌套; - 想“空一行”就写两个
<p></p>—— 应该用 CSS 控制margin,或用<br>(仅限诗歌、地址等需保留行内换行的场景)。 -
<strong></strong>表示内容关键、需被优先理解(屏幕阅读器会加重读); -
<em></em>表示语义上的重音(比如“我**没说**那句话”,重音在“没”); - 如果只是要加粗但无强调意图,用
<span style="font-weight:bold"></span>或 CSS 类更合适; - 滥用
<strong></strong>会让辅助技术失效——整页都是“重点”,等于没有重点。 -
<hr>是主题级分隔,代表内容逻辑切换(如章节结束、作者信息前),不是装饰线;过度使用会割裂阅读流; -
<br>只应在段落内部强制换行时出现,比如诗歌、地址、歌词——它不产生新段落,也不带语义; - 别用多个
<br>模拟空白区域,那是 CSSmargin或padding的职责; - 现代开发中,
<hr>的默认样式常被重置,若仅需视觉分隔,考虑用<div style="border-top:1px solid #ccc"></div>更可控。
<strong></strong> 和 <em></em>:强调语义,不是加粗/斜体快捷键
这两个标签传递的是“重要性”和“语气强调”,而非纯视觉效果:
<hr> 和 <br>:单标签的边界意识
这两个都是自闭合标签,但用途截然不同:
最容易被忽略的一点:所有这些标签的真正价值不在浏览器怎么渲染,而在它们告诉机器(搜索引擎、读屏软件、爬虫)“这段内容是什么”。删掉样式后还能被正确朗读、索引、提取结构,才是语义化标签的终点。











