2014-06-16 49 views
1

我有一些Schema.org微数据一下面这段HTML添加属性:使用微的“itemprop”关于非文本元素

<section class="feature" itemprop="description"> 
    <div class="measure"> 
     <p>Lorem ipsum etc...</p> 
     <p>Lorem ipsum etc...</p> 

     <figure class="polaroid product"> 
     <img src="dry-aged-beef-horizontal.jpg", alt="Dry Aged Beef", itemprop="image" /> 
     <figcaption>Dry Aged Beef</figcaption> 
     </figure> 
    </div> 
    </section> 

是否使用itemprop属性,该属性ISN元素就没事了本身是文本节点(如上面的section),但包含的子元素是?

望着official Schema.org examples一个可能成为可疑的,只有文本元素可以使用微被标记属性:

<span itemprop="description">0.7 cubic feet countertop microwave. Has six preset cooking categories and convenience features like Add-A-Minute and Child Lock.</span> 

而且,我的产品描述由多于一个段落,所以重新设定上的itemprop标签父元素具有一切意义。这是正确的Microdata/Schema.org?

+2

你试过http://www.google.com/webmasters/tools/richsnippets? – mb21

+0

不,但我绝对应该!谢谢。 – abbottjam

回答

1

微观数据(W3C注)defines的属性值,在一般情况下(这适用于你的例子):

[...]元素的textContent

所以是的,你的用法很好。

(当然,这意味着“干老化牛肉”也将是description值的一部分。)

+0

谢谢。当它说“元素的textContent”时,这是否意味着解析器将继续剥离该元素的子节点直到找到文本值? – abbottjam

+1

@ user906230:HTML5引用了WHATWG的[DOM Living Standard](http://dom.spec.whatwg.org/),其中[textContent'的定义说明](http://dom.spec.whatwg.org/# dom-node-textcontent):“上下文对象的所有Text节点后代的数据串联,按树形顺序排列。” ---因此它需要元素及其所有后代元素的文本。 – unor