ホームページ >ウェブフロントエンド >htmlチュートリアル >初心者は HTML の言語エンコード文字セットに注意する必要があります (必読)

初心者は HTML の言語エンコード文字セットに注意する必要があります (必読)

云罗郡主
云罗郡主転載
2018-10-10 15:19:563644ブラウズ


この記事は、初心者が HTML の言語エンコード文字セットに注意する必要があることを示しています (必読)。必要な方は参考にしていただければ幸いです。

初心者は HTML の言語エンコード文字セットに注意する必要があります (必読)

HTML 言語エンコードの重要性に注意してください

1. コーディングの重要性

エンコードにより、閲覧者が IE を使用するときに Web ページが文字化けする可能性があり、また、PC の互換性ハッキングにつながる可能性もあります。

2. コーディング位置

通常、この Web ページのエンコードは、HTML Web ページの

と の間に配置されます。

3. HTML エンコーディング スタイル


charset=utf- の utf-8 を変更することで、Web ページのエンコーディングを変更できます。 8.
通常、CSS ファイルを作成するときは、CSS ファイルの先頭で @charset "utf-8"; を使用して、この CSS ファイルのエンコード タイプを定義する必要もあります。一般に、HTML ソース コードと CSS ファイルのエンコーディングは統一する必要があります。統一されていないと、CSS ハック、ページの文字化け、ページ レイアウトの混乱などの互換性の問題が発生します。

4. 一般的に使用される HTML エンコードの種類

中国で一般的に使用されているのは、utf-8 と gb2312 の 2 つです。一般に、これら 2 つのタイプは国内の Web ページのエンコードのニーズを満たすことができます。もちろん、これら 2 つのエンコーディング タイプは、Web ページを処理したりデータ型を保存したりするためにプログラムやデータベースでも使用されます。

5. UTF-8 には次の特徴があります。

  • UCS 文字 U 0000 ~ U 007F (ASCII) は、バイト 0x00 ~ 0x7F (ASCII 互換) としてエンコードされます。これは、7 ビット ASCII 文字のみを含むファイルは、ASCII エンコードでも UTF-8 エンコードでも同じであることを意味します。

  • すべての UCS 文字 > U 007F は複数バイトの文字列としてエンコードされ、それぞれにフラグ ビットのセットが含まれるため、ASCII バイト (0x00 ~ 0x7F) を他の文字の一部にすることはできません。

  • 非 ASCII 文字を表すマルチバイト文字列の最初のバイトは常に 0xC0 ~ 0xFD の範囲内にあり、その文字に含まれるバイト数が 0x80 ~ 0xBF の範囲内にあることを示します。簡単で、エンコーディングをボーダレスにし、欠落バイトの影響をほとんど受けません。

  • 可能なすべての 231 UCS コードをプログラム可能

  • UTF-8 でエンコードされた文字の長さは理論上最大 6 バイトですが、16 ビット BMP 文字の長さは最大 3 バイトのみです。

  • Bigendian UCS-4 バイト文字列の順序はあらかじめ決められています。

  • バイト 0xFE および 0xFF は、UTF-8 エンコードでは決して使用されません。

    6. GB2312は次のような特徴があります。

    GB2312 標準には、第 1 レベルの中国語 3755 文字と第 2 レベルの中国語 3008 文字を含む合計 6763 文字が含まれています。同時に GB2312 には、ラテン文字、ギリシャ文字、日本語のひらがなおよびカタカナ文字、ロシア語を含む 682 文字が含まれています。全角文字のキリル文字。
  • GB2312 の登場は、基本的に漢字のコンピュータ処理ニーズを満たしています。これに含まれる漢字は、使用頻度の 99.75% をカバーしています。 GB2312 では、収集された漢字が「分割」され、各ゾーンには 94 個の漢字/記号が含まれます。この表現は位置コードとも呼ばれます。

    エリア 01 ~ 09 は特殊なシンボルです。

    領域 16 ~ 55 は、ピンインでソートされた第 1 レベルの漢字です。

    56 ~ 87 の領域は、部首/画数ごとに分類された第 2 レベルの漢字です。

    エリア 10 ~ 15 および 88 ~ 94 はコード化されていません。

    たとえば、文字「あ」は GB2312 の最初の漢字であり、その位置コードは 1601 です。 GB2312 を使用するプログラムでは、通常、バイト構造は ASCII と互換性を保つために EUC 格納方式を使用します。各漢字と記号は 2 バイトで表されます。最初のバイトは「上位バイト」と呼ばれ、2 番目のバイトは「下位バイト」と呼ばれます。 「上位バイト」は0xA1~0xF7(エリアコード01~87に0xA0を加算)、「下位バイト」は0xA1~0xFE(0xA0に01~94を加算)を使用します。たとえば、単語「Ah」は、ほとんどのプログラムで 0xB0A1 として保存されます。 (市外局番と比較してください: 0xB0=0xA0 16、0xA1=0xA0 1)。

    したがって、GB2312 エンコードにおける漢字の市外局番の 10 進数は 176 ~ 247、ビットコードは 161 ~ 255 となります。 6763 が格納される理由は、市外局番が 215 であるため、82*94=6768 より小さいためです。ビットコードは 250 ~ 254 です。漢字コードを除いたコードは合計 5 つあるため、6768-5=6763 となります。

    GB2312 エンコーディングは中国の共通言語として理解できます。

    7. 文字セット の推奨エンコーディング

    UTF-8 は、簡体字中国語と繁体字中国語でこのエンコーディングを使用できることを簡単に理解できます。たとえば、台湾と中国本土ではこのエンコーディングが使用されます。

    8. エンコーディングによる Web ページの互換性エラー

    エンコーディングが混在するとWebページが文字化けし、特にCSSコメントにエンコーディングが混在するとCSSハックにつながります。

    上記は、初心者が注意を払うべき HTML 言語エンコード文字セットの完全な紹介です (必見) HTML チュートリアルについて詳しく知りたい場合は、PHP 中国語 Web サイトに注目してください。

以上が初心者は HTML の言語エンコード文字セットに注意する必要があります (必読)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はdivcss5.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。