itemtype必须是完整HTTPS schema.org URL,如https://schema.org/Product/,且需与itemscope成对出现在外层容器上,严格匹配大小写、协议和斜杠;它定义合法itemprop并依赖DOM层级绑定。

itemtype 必须是完整 HTTPS schema.org URL
单独写 itemtype="Product" 或 itemtype="https://schema.org/Product"(少一个斜杠)都会让整个微数据块失效。Google 和其他解析器只认完整、可访问、大小写精确的 HTTPS URL。
常见错误包括:
- 用 HTTP 协议:
http://schema.org/Product→ 解析器直接跳过 - 漏掉末尾斜杠:
https://schema.org/Product是错的,正确是https://schema.org/Product/ - 大小写错误:
https://schema.org/product/(小写 product)→ 不匹配官方定义 - 加了空格或不可见字符:
https://schema.org/Product/(U+2002 字符)→ URL 校验失败
验证方法:把 itemtype 值粘贴进浏览器地址栏,能打开 schema.org 官网对应页面才算合格。
itemtype 决定了哪些 itemprop 合法
itemtype 不只是“打个标签”,它是一份契约——它规定了当前作用域内哪些 itemprop 名字能用、哪些会报错。比如 itemprop="price" 只在 itemtype="https://schema.org/Offer/" 或 https://schema.org/Product/ 下有效;如果写在 Person 里,Google Structured Data Testing Tool 会明确提示 “Property price is not a valid property of Person”。
立即学习“前端免费学习笔记(深入)”;
实际开发中要注意:
- 查官网文档确认属性归属:访问
https://schema.org/Product/页面,滚动到底部看 “Properties” 列表,只取其中列出的名称(如name、image、offers) - 嵌套对象必须用对应类型:作者要标
itemprop="author",那它的子容器就得是itemscope itemtype="https://schema.org/Person/",不能用Organization替代 - 同一页面多个实体,每个都要独立
itemtype:三篇博客就该有三个itemscope itemtype="https://schema.org/Article/"容器,不能复用一个
itemtype 应该挂在哪种 HTML 元素上
itemtype 必须和 itemscope 成对出现在**外层容器元素**上,这个容器得能包裹全部相关字段。它不能加在空 <div>、孤立 <code><p></p> 或文本节点上。
推荐做法:
- 优先复用语义化标签:用
<article itemscope itemtype="https://schema.org/Article/"></article>,而不是额外套一层<div> <li>表单场景下,可用 <code><form itemscope itemtype="https://schema.org/ContactPage/"></form>包裹整个联系表单区域 - 避免跨区块使用:不要用一个
itemscope同时罩住页头、正文、侧边栏——结构松散会导致 itemprop 绑定错位 - 不支持自闭合标签:
<img itemscope itemtype="..." alt="HTML itemtype属性怎么定义网页结构化数据" >无效,itemscope要求有子内容和闭合标签 - 错误:
<div itemprop="author"><span itemscope itemtype="https://schema.org/Person/">张三</span></div>→itemprop="author"没绑定到任何itemscope,整个 author 被丢弃 - 正确:
<div itemprop="author" itemscope itemtype="https://schema.org/Person/">张三</div>→itemprop和itemscope必须在同一元素上 - 地址类嵌套常漏掉
postalCode或addressCountry:哪怕只缺一个,itemtype="https://schema.org/PostalAddress/"就可能被判定为不完整,影响地图展示
itemtype 和 itemprop 的绑定依赖 DOM 层级
解析器靠 DOM 树层级判断 itemprop 归属哪个 itemtype。如果嵌套过深或中间断开,机器就读不到关系。
典型断裂场景:
真正起作用的不是某个孤立的 itemtype,而是它和 itemscope 共同划定的作用域边界,以及所有 itemprop 是否严格落在这个边界内、且符合类型契约。边界模糊或契约错配,结构化数据就等于没写。



















