--- 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")}}