0

メタタグコンテンツに含まれる可能性のあるものに制限はありますか?

次のメタタグを定義しています。

    <meta name="doctype" content="<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.01//EN\" \"http://www.w3.org/TR/html4/strict.dtd\">"/>

残念ながら、コンテンツは実際には単なる文字列であるため、w3バリデーターは意味をなさないエラーをスローします。

「-」は、どの属性にも指定されたグループのメンバーではありません

誰かが問題を説明できますか?クライアント側のjQueryスクリプトにはさまざまな情報が必要であり、これまでは常にさまざまなメタタグを使用していました。

4

2 に答える 2

1

メタ タグ コンテンツに含まれる内容に制限はありますか?

HTMLのバージョンによって異なります。

ほとんどのバージョンは、それについてかなりリラックスしています。HTML 5 にはかなり厳しい制限があります (ただし、「この Wiki ページのすべて」を含む制限があります... 私が知っている限り、最新の状態を維持できるバリデータはありません)。

「-」は、どの属性にも指定されたグループのメンバーではありません

"これは、文字で区切られた属性値に生の文字を含めることができないためです"&quot;(または数値文字参照)として表す必要があります。

于 2012-12-07T10:52:25.027 に答える
0

どの HTML 仕様でも、属性を持つmetaタグには何でも含めることができます。name(実際には、そのようなタグはほとんどのソフトウェアで無視されますが、正式には有効です。) ただし、HTML5 ドラフトでは非常に特殊なルールが課されます。

ただし、この場合、問題は純粋に構文上の問題であり、HTML のバージョンには依存しません。文字列content="<!DOCTYPE HTML PUBLIC \"は属性指定として解析され、残りは構文エラーを引き起こします。バックスラッシュ (逆斜線)「\」は、HTML では特別な意味を持ちません。これは単なる別の文字であり、いかなる種類のエスケープ表記としても機能しません。

ただし、最終的な問題は、metaタグを使用してドキュメント タイプを指定しようとすることです。構文を正式に正しいものに修正しても、単純には機能しません。効果はありません。ドキュメント タイプを指定する方法は、ドキュメントの最初に doctype 宣言を含めることです。

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" 
    "http://www.w3.org/TR/html4/strict.dtd">

最初に指定しないと後で指定しようとしても遅いです。

于 2012-12-07T11:50:55.390 に答える