8

W3C Validator によると、私の HTML はほぼ HTML5 に準拠していますが、残っているエラーは 1 つだけです。それは、Google プラス ボタンを構成するための Javascript コードです。

CDATA を追加するかどうかに関係なく、「要素のテキスト コンテンツがscript必要な形式ではありませんでした: スペース、タブ、改行、またはスラッシュが必要ですが、{代わりに見つかりました」というエラーが表示されます。次の行に表示されます。

<script src="http://apis.google.com/js/plusone.js" type="text/javascript">
   {"lang":"en","parsetags":"explicit"}
</script>
4

2 に答える 2

3

エラーメッセージは正しいです。属性が設定されているscriptタグには、ドキュメント(空白とコメント(または))のみを含めることができますsrc/* ... *///...

エラーを回避したいだけの場合は、非同期ロードの例scriptのように、jsを使用してタグを作成してみてください。これは有効にはなりませんが、少なくとも最初に提供されたhtmlにはエラーがなく、バリデーターは文句を言いません。

于 2013-01-18T22:39:58.287 に答える
2

...ここでの検証戦争にあなたが勝つとは思えません。

検証に夢中になっているクライアント/上司がいる場合 (堅実なコードではなく、薄っぺらで不安定な有効なコードを完全に作成できるため)、g+ を完全に削除するように指示できます。

しかし、Google はそのスクリプト タグを使用してファイルを読み込みます。そのファイルは、最後に読み込まれたスクリプト タグを見つけて、内部テキストを使用してプログラムを構成します。

完全に有効な構文ですか? そうではありません。

おそらく、彼らは JS コメント内で動作することを検討するかもしれませんが、実際には、Google は世界を乗っ取り、Web プログラミングを進化させるにつれて、この内容を頻繁に変更します (angular.js はクレイジーです)。

それらは完璧ではありませんが、「W3C バリデータ承認済み」コードよりも確実なコードであると思います。

于 2013-01-18T22:35:49.030 に答える