Html 列表标记上的微数据未使用W3C验证程序验证

Html 列表标记上的微数据未使用W3C验证程序验证,html,microdata,Html,Microdata,我是全新的微数据,我正在慢慢地得到它。但由于某种原因,这在W3C验证器中没有得到验证,因为我在 < UL> :中放置了 。 <div itemscope itemtype="http://schema.org/BeautySalon"> <ul> <li> <b> <span itemprop="name">foobar and you</span> </b>

我是全新的微数据,我正在慢慢地得到它。但由于某种原因,这在W3C验证器中没有得到验证,因为我在<代码> < UL> :

中放置了<代码> <代码>。
<div itemscope itemtype="http://schema.org/BeautySalon">
  <ul>
    <li>
      <b>
        <span itemprop="name">foobar and you</span>
      </b>
    </li>
    <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
      <li>
        <span itemprop="streetAddress">6969 foobar</span>
      </li>
      <li>
        <span itemprop="addressLocality">Miami Beach</span>, 
        <span itemprop="addressRegion">FL</span>
        <span itemprop="postalCode">33139</span>
      </li>
    </div>
    <li>
      <span itemprop="telephone">305 691 6969</span>
    </li>
  </ul>
</div>

  • 福巴和你
  • 6969福巴
  • 迈阿密海滩, 佛罗里达州 33139
  • 305 691 6969
如何正确添加

<div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress"> 


并正确添加所有的
itemprop
并且仍然是W3C有效吗?

ul
不允许将
div
作为子元素,因此不能将其用作多个
li
元素的容器。有各种可能的解决办法

我认为在这里使用
ul
是不合适的。但是如果您想继续使用
ul

街道地址与地区/地区/邮政编码不在同一列表项中似乎没有意义。因此,您可能希望将它们全部放在同一个列表项中(并且您可能还希望对邮政地址使用
br

如果要使用
b
作为名称,可以省略
span
。在
b
上指定微数据,或在
li
上指定(一致性)

如果电话号码不需要单独的元素,可以在
li
上指定微数据

这将给你:


    foobar和你
  • 6969福巴
    迈阿密海滩, FL
    33139
  • 305 691 6969
你。重新使用现有的标记。仅当您需要微数据的其他元素时,才添加并使用
div
/
span
(并且可能)