--- title: Microdata slug: Web/HTML/Microdata tags: - 微数据 搜索 搜索引擎优化 translation_of: Web/HTML/Microdata ---

概要

微数据是WHATWG HTML 标准的一部分,用于在网页上的现有内容中嵌套元数据。[1] 搜索引擎,网络抓取工具和浏览器可以从网页中提取和处理微数据,并使用它为用户提供更丰富的浏览体验。搜索引擎从直接访问此结构化数据中受益匪浅,因为它允许搜索引擎了解网页上的信息并向用户提供更相关的结果。微数据使用支持词汇表来描述项目和名称 - 值对,以便为其属性赋值。与使用 RDFa 和微格式的类似方法相比,微数据试图提供一种使用机器可读标签注释 HTML 元素的简单方法。

高级的微数据由一组 name-value 对组成。这些组称为项,每个 name-value 对都是一个属性。项目和属性由常规元素表示。

词汇表

谷歌和其他主要搜索引擎支持结构化数据的Schema.org词汇表。此词汇表定义了一组标准类型名称和属性名称,例如,Schema.org Music Event表示音乐会表演,startDatelocation 属性用于指定音乐会的关键细节。在这种情况下,Schema.org Music Event将是itemtypestartDate使用的 URL,而location将是Schema.org Music Event 定义的itemprop

注意: 有关 itemtype 属性的更多信息,请访问http://schema.org/Thing

微数据词汇表提供了项目的语义或含义。 Web 开发人员可以设计自定义词汇表或使用 Web 上可用的词汇表,例如广泛使用的schema.org 词汇表。 schema.org 提供了一组常用的标记词汇表。

常用词汇:

谷歌,微软和雅虎等主要搜索引擎运营商依靠schema.org 词汇表来改进搜索结果。实现一般目标,临时词汇就足够了。对于其他的,可能需要设计一个词汇表。在可能的情况下,鼓励作者重用现有的词汇表,因为这样可以更轻松地重复使用内容。

本地化

在某些情况下,覆盖特定区域的搜索引擎可以提供微数据的本地特定扩展。例如,Yandex是俄罗斯的主要搜索引擎,支持微格式,如 hCard(公司联系信息),hRecipe(食品配方),hReview(市场评论)和 hProduct(产品数据),并提供自己的格式来定义术语和百科全书文章。这个扩展是为了解决西里尔字母和拉丁字母之间的音译问题。由于 Schema 词汇表的附加标记参数的实现,俄语网页中的信息索引变得更加成功。

全局属性

itemid – 项的唯一全局标识符。

itemprop – 用于向项添加属性。每个 HTML 元素都可以指定一个 itemprop 属性,其中 itemprop 由一个名称和值对组成。

itemref – 不具有itemscope属性的元素的后代的属性可以使用itemref与项目相关联。 Itemref 提供了元素 id 列表(而不是itemids)以及文档中其他位置的其他属性。

itemscope – Itemscope(通常)与itemtype一起使用,以指定块中包含的关于特定项目的 HTML。 itemscope 创建 Item 并定义与之关联的 itemtype 的范围。 itemtype 是描述项及其属性上下文的词汇表(例如schema.org)的有效 URL。

itemtype – 指定将用于在数据结构中定义 itemprop(项属性)的词汇表的 URL。 Itemscope 用于设置数据结构中按 itemtype 设置的词汇表的有效范围。

示例

HTML

<div itemscope itemtype="http://schema.org/SoftwareApplication">
  <span itemprop="name">Angry Birds</span> -

  REQUIRES <span itemprop="operatingSystem">ANDROID</span><br>
  <link itemprop="applicationCategory" href="http://schema.org/GameApplication"/>

  <div itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating">
    RATING:
    <span itemprop="ratingValue">4.6</span> (
    <span itemprop="ratingCount">8864</span> ratings )
  </div>

  <div itemprop="offers" itemscope itemtype="http://schema.org/Offer">
    Price: $<span itemprop="price">1.00</span>
    <meta itemprop="priceCurrency" content="USD" />
  </div>
</div>

Structured data

itemscope itemtype SoftwareApplication (http://schema.org/SoftwareApplication)
itemprop name Angry Birds
itemprop operatingSystem ANDROID
itemprop applicationCategory GameApplication (http://schema.org/GameApplication)
itemscope itemprop[itemtype] aggregateRating [AggregateRating]
itemprop ratingValue 4.6
itemprop ratingCount 8864
itemscope itemprop[itemtype] offers [Offer]
itemprop price 1.00
itemprop priceCurrency USD

Result

{{ EmbedLiveSample('HTML', '', '100', '', 'Web/HTML/Microdata') }}

注意: 从 HTML 中提取微数据结构的便捷工具是 Google 的Structured Data Testing Tool。在上面显示的 HTML 上尝试一下。

浏览器兼容性

在 Firefox 16 中支持,在 Firefox 49 中移除。

相关链接

{{QuickLinksWithSubpages("/en-US/docs/Web/HTML")}}