フレームワークがHTML5ページの生成を処理する方法を最適化しようとしています。現在、私が行っているのはタグの<meta charset="utf-8"/>
直後に挿入することです<head>
。これが最初に指定される要素です(したがって、<title>
タグと残りのページ要素を渡すと、UTF-8でエンコードされていると既に定義されています)。
問題は、Webサイトのパフォーマンスの最適化に関する本を読んでいることです。それらのほとんどは、ブロックContent-type
を挿入するのではなく、宣言を通じてエンコードを指定することを推奨しています。<meta>
文字エンコードの検出に関するW3Cのドキュメント(セクション8.2.2.1)には、ユーザーがユーザーエージェントを介してコンテンツタイプのオーバーライドを宣言した場合を除いて、基本的にHTTPヘッダーが明示的な宣言よりも優先されると記載されています。
ただし、W3Cバリデーター(HTMLコード出力のデバッグに使用する理由)は文句を言わず、ブロックがないことを警告するため、<meta charset="utf-8"/>
ブロックを配置するように促します(レンダリングされたページが保存されますが、そうではありませんが、それでも...少し混乱します)。
問題は...ページが常にUTF-8でエンコードされたものとして指定されていることを確認するにはどうすればよいですか?HTTPヘッダーと<meta>
タグを宣言する必要がありますか、それともHTTPヘッダーだけを宣言する必要がありますか?