HTML の解釈: 名前空間と文字エンコーディング

黄舟
リリース: 2016-12-17 14:10:20
オリジナル
1228 人が閲覧しました

プロジェクトに取り組む過程で、チーム間の協力を促進し、プロジェクトをより適切に完了するためにさまざまな仕様を確立することがよくあります。同様に、Google IM ソフトウェアである Gtalk はオープンな XMPP プロトコルを使用します。他の IM ソフトウェアも XMPP プロトコルに準拠しており、Gtalk と相互運用できます。インターネット上には無数の情報が存在し、それを接続してユーザーの前に表示する方法は HTTP プロトコルを使用する必要があります。

同じ理由で、ブラウザーはカーネルが異なり、デフォルト スタイルのレンダリングが異なるため、同じ Web ドキュメントが異なるブラウザーでレンダリングされることを保証するために、各ブラウザーが従う一連のルールが必要です。このルールは、 DOCTYPE ステートメント。

インターネットは相互接続されているため、2 つ以上の Web ドキュメントでデータ交換が行われる可能性があり、XML 言語ではユーザーがタグをカスタマイズできるため、交換される 2 つのドキュメントに同じタグが付けられ、同じタグの競合が発生する可能性があります。名前空間は、交換ドキュメント内に存在する可能性のある同じタグを区別するために必要です。

XHTML は、HTML から XML に移行する言語として、XML 言語でユーザー定義のタグを実装できないため、XHMTL ドキュメント内の名前空間は同じです:

xmlns は XHTML namespaceの略称は、いわゆる「ネームスペース」です。 DOCTYPE 宣言と同様、xmlns も宣言の一種です。 HTML ドキュメントに依然として存在する DOCTYPE ステートメントとは異なり、XHTML ドキュメントには通常見られる xmlns は存在しません。

Webページを作成する場合、最初にDOCTYPE(文書タイプ)を宣言するほか、XHTML文書であれば名前空間も宣言する必要があり、3番目に宣言する必要があるのは文字エンコードタイプです。 Web ページドキュメントの:

ブラウザによって正しく解釈され、W3C によって検証されるために、各 XHTML ドキュメントは使用される文字エンコーディングを宣言する必要があります。多くの場合、Web ドキュメントの文字化けは、文字エンコーディングが正しくないことが原因で発生します。

utf-8 は Unicode の可変長エンコーディング表現であり、文字エンコーディングの違いによる文字化けを最大限に回避できる utf-8 文字エンコーディングを使用する Web ドキュメントで使用されることが増えています。異なる地域のユーザーが同じ Web ページにアクセスする場合のエンコーディング。

しかし、ほとんどの国内 Web サイト、特に大規模なポータル Web サイトを開くと、文字エンコーディングに関する記述は utf-8 ではなく gb2312 です。

もちろん、gb2312 に加えて、gbk または gb18030 エンコーディングを使用する Web サイトもいくつかあります。 、これら 3 つの文字エンコーディングはすべて簡体字中国語の文字セットに属します。つまり、簡体字中国語文字セットがインストールされていないコンピュータで、文字コード gb2312 の中国語 Web ページにアクセスすると、文字化けが表示されます。

gb2312の文字コードでは、異なる地域からのユーザーアクセスにより文字化けが発生する可能性があるため、utf-8を使用してみてはいかがでしょうか?

理由の 1 つは歴史的な理由によるものである可能性があり、もう 1 つのより重要な理由は、2 つのエンコーディングの異なる保存方法によって引き起こされるドキュメント サイズの違いであるはずです。

gb2312 文字エンコーディング セットを使用する場合、中国語の文字は 2 バイトを占有しますが、UTF-8 エンコーディングでは中国語の文字が占有するバイト数は 3 バイト、または 3 バイトを超える場合もあります。したがって、同じ中国語の文書の場合、gb2312 文字エンコードを使用した場合の保存容量は、utf-8 エンコードで保存された文書のサイズよりも小さくなります。

テキストが多くトラフィックの多い中国の Web サイトの場合、gb2312 でエンコードされた Web ドキュメントにより、ダウンロードと送信のトラフィックを大幅に節約できます。さらに、中国の Web サイトのユーザー グループは基本的に中国人ユーザーにロックされています。多くの Web サイトが utf-8 エンコードではなく gb2312 エンコードを使用しているのはなぜですか。

ただし、中国ではテキスト量が多くトラフィックが多いWebサイトは多くありません。また、文字化けの問題が発生する可能性があるため、Webページを作成する場合はUTF-8エンコーディングを使用することをお勧めします。

もちろん、どのようなエンコードを使用する場合でも、最も重要なことは、サイト全体で使用されるエンコードを統一する必要があることです。

上記の文字エンコーディングの宣言方法に加えて、別の宣言方法も表示される場合があります:


この宣言方法はブラウザの古いバージョン用であり、ブラウザは一般的に更新されています。現在では推奨されなくなりました。

上記は HTML の解釈、つまり名前空間と文字エンコーディングに関するものです。その他の関連記事については、PHP 中国語 Web サイト (www.php.cn) に注目してください。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート