HTML 语义化与文档结构
面试怎么问什么是 HTML 语义化?为什么不能把所有元素都写成 div?
查看背诵答案与示例
语义化是按内容和用途选择 HTML 元素,让结构本身表达含义。导航用 nav,主要内容用 main,独立文章用 article,标题按层级组织。它有助于辅助技术定位区域,也让代码和搜索引擎更容易理解内容。视觉样式交给 CSS;标签选择依据内容关系,不依据默认字体或边距。
记住这几个点
- main 表达页面主要内容;nav 表达主要导航区域。
- article 适合可独立分发的内容,section 表达一个主题分区。
- 标题级别反映内容层次,不能为了字号跳级。
- 跳转使用带 href 的 a,执行操作使用 button。
<header>前端复习</header>
<nav aria-label="主导航"><a href="/">首页</a></nav>
<main>
<article>
<h1>HTML 基础</h1>
<section>
<h2>语义化</h2>
<p>按内容意义选择元素。</p>
</section>
</article>
</main>
语义标签不自动保证 SEO 排名或无障碍达标;错误标题、缺少名称和不可操作的交互仍需修复。
常见追问:section 和 div 怎么选?
有独立主题且通常可用标题概括时考虑 section;只为布局或样式分组、没有额外语义时使用 div。不要为了替换 div 而机械增加 section。