AI 智能体读取页面时,看到的不是视觉画面,而是 DOM 树。你用一层层 <div> 搭出的精美版式,在解析器眼里只是一堆含义不明的容器;同样一段文字,换成语义化标签后,提取准确度会截然不同。语义化 HTML 不只是无障碍体验的加分项,更是帮助 AI 引擎准确引用内容的低成本基础建设。
为什么 AI 智能体尤其依赖语义化标签
当 Google 的 AI Overview、Perplexity 或 ChatGPT 抓取一个 URL 时,背后会运行一套将 HTML 转换为纯文本的处理流程。样式会在这个过程中消失,结构却会保留下来:<h1> 说明页面主题,<article> 划定正文范围,<nav> 和 <footer> 则会被识别为模板内容并过滤。标签选得准确,模型就更容易提炼重点;如果满页都是 div,模型只能依靠字数、位置和运气,猜测哪一段值得引用。
真正拉开差距的是解析器的判断置信度。用 <main><article> 包裹内容,并保持连续的 <h2> 层级,解析器就能识别出一个边界清晰、可独立提取的内容单元;换成 <div class="content-wrapper-2">,同样的文字便失去了这些信号。我们为客户开展 GEO 审计时,最常见的品牌曝光问题并不是内容不够好,而是优质内容被埋在多层嵌套、毫无语义的 div 中,AI 引擎根本无法截取出干净、完整的引用片段。
标签表达的是“含义”,不是外观
语义化的核心只有一个:每个标签声明的是内容“扮演什么角色”,而不是“看起来是什么样”。<button> 表示触发操作的控件,<a> 表示可跳转到其他位置的链接,<ul> 表示一组并列项目。浏览器、屏幕阅读器和 AI 解析器都会读取这些含义。选择标签时,不要问“我想让它长什么样”,而要问“这段内容本质上是什么”。
- <main>:整个页面只能有一个。它圈定“这个页面真正要讲的内容”,让解析器直接跳过页眉、侧边栏和页脚。
- <article>:可以独立提取、脱离页面后仍然完整成立的内容单元,例如文章、FAQ 或产品卡片。
- <h1> 到 <h6>:相当于页面目录。标题层级应当连续,不能为了字号效果随意跳级。
- <nav>:用于导航链接。标记后,引擎就知道这一区域是菜单,而不是正文。
- 带标题的 <section>:用于组织一组围绕同一主题的段落,通常应配有标题。
- <table>、<thead>、<th>:真正的表格数据要使用表格标签,不要用 div 模拟布局;AI 正是依靠这些标签提取表格。
- <time datetime> 和 <address>:将日期与联系信息转为机器可直接读取的字段。
有个简单的自查方法:直接念出标签名称,看它是否准确描述了内容本质。如果一个可点击操作使用的是 <div>,念出来只是“一个容器”,那就用错了,它应该是 <button>。外观交给 CSS,标签只负责说明含义。两者分开,机器才能准确理解。
最常见的坑:div 泛滥与标题层级混乱
实操中反复出现的问题其实只有几类:整个页面只有 div 和 span,没有任何语义化标签,这通常被称为“div soup(div 汤)”;一个页面里出现多个 <h1>,或者为了字号效果把 <h4> 当作 <h2> 使用,导致标题层级错乱,模型生成的页面大纲也随之出错;还有一些所谓的“列表”只是用 <br> 强行换行,按钮则由 <div onclick> 冒充。它们在屏幕上看起来或许没有区别,但在 DOM 中几乎没有可供机器判断的语义信息。

页面语义化改造的实施顺序
不必一次重写整个网站。先选出一个对品牌曝光最重要的页面,按照下面的顺序改造,很快就能掌握方法。
- 先搭好整体骨架:确保整个页面有且只有一个 <main>,并分别用 <header>、<nav> 和 <footer> 包裹页眉、导航与页脚。
- 调整标题层级:每页只设一个 <h1>,<h3> 只能出现在 <h2> 之下,不得跳级。使用浏览器插件或命令列出页面大纲进行检查。
- 用 <article> 包裹正文:让 FAQ、操作步骤、定义等可独立引用的内容块拥有清晰边界。
- 替换伪组件:将 <div onclick> 改为 <button>,将用于导航的伪按钮改为 <a href>。
- 还原数据结构:表格使用 <table>,列表使用 <ul> 或 <ol>,日期使用 <time>。
- 补齐 label 和 alt:为表单控件添加 <label for>,为图片添加 alt,让机器与屏幕阅读器读到一致的语义。
如何验证机器是否真的读懂了页面
改完后不要凭感觉判断。最快的方法是开启浏览器的“阅读模式”:Safari 或 Firefox 的阅读视图能否完整、清晰地提取正文?如果可以,AI 解析器通常也能做到。第二种方法是通过命令行抓取原始 HTML,确认正文并非由 JavaScript 后加载。第三种方法是打开开发者工具中的无障碍树,它呈现的结构非常接近机器眼中的页面。三项检查全部通过,页面才算真正具备机器可读性。
如果关闭整个网站的 CSS,页面是否依然可读?只要内容顺序清晰、标题明确、列表仍然保持列表结构,AI 智能体就能理解;如果页面变成一堆顺序混乱的文字,机器同样无从判断。
完成语义化,再叠加结构化数据
语义化 HTML 是底线,不是上限。基础结构理顺后,再叠加 Schema.org 的 JSON-LD,通过 Article、FAQPage、Product 等类型,向机器明确说明日期、作者、价格等事实。但顺序不能颠倒:在一团 div 上贴 schema 只是表面修饰,因为抓取器会将标记内容与实际 DOM 对照,不一致反而会被扣分。先把 HTML 语义修正,schema 才站得住。如果想了解 AI 抓取器眼中的页面是什么样、差距又在哪里,可以预约一次 30 分钟的 GEO 诊断,我们会结合实际提取结果带你逐项分析。



