Я добавляю Microdata на сайт и задаюсь вопросом, на каком уровне должно появиться свойство itemprop
.Microdata itemprop на родительском div с детьми
К примеру, у меня есть следующий код:
<div itemscope itemtype="http://schema.org/Article">
<div class="author">
<a href="http://www.author.com">Author's Name</a>
</div>
</div>
Где должен itemprop
идти, в a
элемент непосредственно или можно добавить его в <div class="author">
и будет обработан правильно?
Могу ли я иметь следующее:
<div itemscope itemtype="http://schema.org/Article">
<div class="author" itemprop="author">
<a href="http://www.author.com">Author's Name</a>
</div>
</div>
вместо
<div itemscope itemtype="http://schema.org/Article">
<div class="author">
<a href="http://www.author.com" itemprop="author">Author's Name</a>
</div>
</div>
Другими словами, делает itemprop
свойство должны быть определены на элементе непосредственно (например, a
или img
) или его можно определить на обертке div
с содержимым, фактически находящимся в дочернем элементе?
Спасибо! Что, если содержимое 'div' с' itemprop' является 'img'? Будет ли создан [ImageObject] (http://schema.org/ImageObject)? – p4sh4
@ p4sh4: Вы имеете в виду '
'? Нет, потому что 'div' - это элемент, который создает строковое значение: он ищет содержимое своего элемента (и содержимое элемента для всех детей). Поскольку 'img' пуст (т. Е. Не имеет содержимого элемента), свойство' foo' не будет содержать контент. ··· Также обратите внимание, что Microdata никогда автоматически не создает элементы из словаря (например, Schema.org).Микроданные - это просто синтаксис, который можно использовать со многими различными словарями (он просто заботится о строках, URI и датах). Вам нужно будет использовать 'itemtype' для получения' ImageObject'. – unorДа. Фактически, я спрашивал о Schema.org, кто-то редактировал мой пост, чтобы быть о Microdata, это странно ... Итак, вы имеете в виду, что в случае Schema.org он автоматически создаст элемент ImageObject «из словаря», (не уверен, что это означает), в отличие от Microdata? – p4sh4