2016-10-24 6 views
0

Microdataマークアップ(Schema.orgを使用)をページに追加しようとしています。現時点では、コードは次のようになります。しかしMicrodataマークアップの周囲のh1、h2、h3

<div itemscope itemtype="http://schema.org/Product"> 
    <div class="primary"> 
     <div itemprop="brand" itemscope itemtype="http://schema.org/Brand"> 
      <span itemprop="name">Acme Co</span> 
     </div> 
     <h4 itemprop="name">Blue Widget</h4> 
    </div> 
</div> 

、私がやりたいことは、「ブルーウィジェット」を「アクメ共同ブルーウィジェット」からh4を変更です。私は既にBrandタイプでカプセル化された会社名を持っていますので、私はそのページでそれを繰り返す必要はありません。ここに私が考えていることがあります。

解決策

<div itemscope itemtype="http://schema.org/Product"> 
    <h4 class="primary"> 
     <span itemprop="brand" itemscope itemtype="http://schema.org/Brand"> 
      <span itemprop="name">Acme Co</span> 
     </span> 
     <span itemprop="name">Blue Widget</span> 
    </h4> 
</div> 

それは(私はそれをテストすることができます)ミクロ/ Schema.orgマークアップが有効になるかどうかの問題ではないのですが、私はそれをしたいとヘッダは、ブラウザによって読み込まれます - "Acme Co Blue Widget"?私はSchema.orgのすべてのことが不安です。

+0

私は同じコードを参照してください。二度? – giorgio

+0

いいえ、あなたはしません - 私はそれを繰り返すことを望まないと言ったので、2番目の解決策です。 –

+0

ああ!はい、私は今の違いを参照してください;)あなたがいるタイムゾーンではdunnoですが、ここの朝の朝です:p – giorgio

答えて

1

はい、問題ありません。

heading elements h1-h6は、phrasing contentspanを含む)を含むことができます。 span要素は無意味であるように、これらのh4は、意味的に等価です:

<h4>Foobar</h4> 
<h4><span>Fo<span>o</span>bar</span></h4> 

ミクロ属性は、HTMLのセマンティクスを変更しないでください。あなたのソリューションに代わるものはmeta要素を使用することです(しかし、あなたはあなたのソリューションに満足している場合は、この代替手段を使用する必要はありません)


<div itemscope itemtype="http://schema.org/Product"> 
    <span itemprop="brand" itemscope itemtype="http://schema.org/Brand"> 
    <meta itemprop="name" content="Acme Co" /> 
    </span> 
    <h4 itemprop="name" class="primary">Acme Co Blue Widget</h4> 
</div> 
関連する問題