私はいくつかのFacebookソーシャルプラグインを使用しており、メタヘッダーを使用しています。ページを検証するときに、W3Cバリデーターがエラーをスローします-> "エラー:"プロパティ "属性がありません。
XHTML Transitional doctype-<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
を使用しています
Doctypeを別のものに変更する必要がある場合は、Plsが提案します。
Facebookのプラグインは、RDFaに基づいて構築された Open Graph を使用します。要素にproperty
属性を追加するのはRDFaです。この追加がない場合、プレーンHTMLにはそのような属性はありません。 (私に尋ねると、名前空間を付けずに新しい属性を追加し、<meta>
タグの半分を再利用するのは奇妙な設計です。しかし、誰もしませんでした。)
XHTML-with-RDFaを検証するには、DOCTYPEが必要です。
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML+RDFa 1.0//EN" "http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd">
つまり、有効なXHTML 1.1を作成する必要があります。 その他
ドキュメントが準拠するHTML + RDFaドキュメントであると主張するには、このセクションで必須として説明されている機能を提供する必要があります。文書の適合基準は以下にリストされており、サブセットのみが必須です:
version
要素にはhtml
属性が必要です。バージョン属性の値はHTML+RDFa 1.0
ドキュメントが非XMLモードドキュメントの場合、またはXHTML+RDFa 1.0
ドキュメントがXMLモードドキュメントの場合。rel
属性のプロファイルとhref
属性の http://www.w3.org/1999/xhtml/vocab を含むリンク要素がhead要素に含まれている可能性があります。例:
<html version="HTML+RDFa 1.1" lang="en">
<head>
<title>Example Document</title>
</head>
<body>
<p>Moved to <a href="http://example.org/">example.org</a>.</p>
</body>
</html>
Open Graph が示唆しているように、HTML5を使用している場合は、次のような接頭辞属性を使用する方がよいでしょう。
<!doctype html>
<html prefix="og: http://ogp.me/ns#">
<head>
<title>HTML5 site</title>
<meta property="og:title" content="The Rock" />
</head>
<body>
</body>
</html>
Doctypeをそのままにしておくと、 validate になります。
このアプローチは、Open Graph開発者によっても 推奨 されています。