ホームページ >ウェブフロントエンド >htmlチュートリアル >CSS 文字エンコーディングにより文字化けが発生する_html/css_WEB-ITnose

CSS 文字エンコーディングにより文字化けが発生する_html/css_WEB-ITnose

WBOY
WBOYオリジナル
2016-06-24 11:31:541028ブラウズ

文字化けによる CSS エラーの原理:
1 つの漢字は 2 つの文字で構成されているため、エンコーディングが一貫していない場合、文字の「再」組み合わせ (漢字の半分の組み合わせ) が発生します。コード化された文字と次の文字によって新しい「テキスト」が生成される)により、元の末尾が「突然変異」に準拠することになり、その結果、末尾記号が見つからなくなり、後続の CSS が無効になります。

ヒント1: CSSで発生する文字化けは、CSSの文字エンコーディングとページの文字エンコーディングの不一致によって発生するため、最も直接的な方法は文字エンコーディングを一致させることです。 CSS のエンコード タイプを指定します。例: @charset "utf-8"; (指定するエンコード タイプは utf-8 であり、CSS ファイルの最初の行に記述する必要があります)
ヒント 2: CSS で文字化けが発生するはすべて漢字が原因なので、中国語を書かない限り「文字化けがCSSの失敗を引き起こす」ということはありません。上記の2つのヒントはさておき、さらに深く掘り下げていくと、「文字化け」が発生します。 「文字」は通常、次の 2 つの状況から生じます。
1. 中国語のコメントにより文字化けが発生する
CSS コメントは次のとおりです: /*特定のコメント*/
文字化けしたコードの例:
通常のコード: /*3 つの中国語文字*/
文字化けの原因: /*涓夋眽瀛?/
ブラウザ環境: IE6
HTML: gb2312
CSS: エンコード指定なし、実際はutf-8に解析されます

上記の例は、CSSコメントの終了文字をブロックし、後続のCSSコンテンツをコメント範囲内にする文字化けコードです
予防策: コメントの強化
例:
通常のコード: /****漢字 3 文字****/
文字化けの原因となるコード: /****フアン・狋罽瀛?***/
この強化されたコメントにより、文字化けを防ぐことができます。コメントの末尾が変わる文字化けをCSS記述時の「変異」を事前に防ぐことができます

2.中国語フォントが文字化けの原因
CSS指定フォント: font-family: "中国語フォント";
文字化けコード例:
正常なコード: font-family: "黑体"
原因: 文字化けコード: font-family: "翜涋"
ブラウザ環境: IE6
HTML: gb2312
CSS: エンコード指定なし、実際はutf-8に解析されます

上記の例は文字化けしており、フォント名が文字化けしてしまい、「指定されたフォントが無効です」というメッセージが表示されます。この問題の影響はそれほど深刻ではないようですが、実際の状況では、文字化けによって次の引用符が「ミュート」され、次の CSS がフォントの引用符内にあるという状況が実際に存在します。以下の CSS がすべて無効になります。
予防策: フォントのエイリアスを使用する(ブラウザが認識できるようにする)
例:
通常のコード: font-family: "SimHei" (font-family: "9ed14f53" )
ブラウザ解析: font-family: " SimHei " (font-family: "Heibody"、IE6 は依然として font-family: "9ed14f53" ですが、フォント解析では黒竜江省と表示されます)
中国語の使用を避けるためにエイリアスを使用し、文字化けを回避します

css 中国語フォント (font-ファミリー) リスト

Windows 用の一部:

Helvetica: SimHei

Song 王朝: SimSun

新しい Song 王朝: NSimSun

FangSong: FangSong

Script: KaiTi

FangSong_GB2312: 2

Kaiti_GB2312:KaiTi_GB2312

マイクロソフトYahei: Microsoft YaHei

Office インストール後に誕生するものの一部:

公式スクリプト: LiSu

Youyuan: YouYuan

华文 Fine Hei: STXihei

华文楷体: STKaiti

华文宋体: STSong

华文中宋体: STZhongsong

中国語模倣歌: STFangsong

創始者シュティ: FZShuTi

創始者ヤオティ: FZYaoti

中国語彩雲: STCaiyun

中国琥珀: STHupo

中国語公式スクリプト: STLiti

华Wen Xingkai: STXingkai

华文新微: STXinwei

追加:

Kaiti_GB2312 と模倣 Song_GB2312 を使用した後、対応するフォントが Windows 7/Vista/2008 で表示されなくなる場合があります。

これは、Windows 7/Vista/2008にはKaiTiとFangSongがありますが、デフォルトではKaiTi_GB2312とFangSong_GB2312がなく、フォント名の違いが「_GB2312」であるためです。

------------------------------------------------ -----------

CSSで中国語フォントを書く方法

フォントの書き方については、

body、

ボタン、input、select、textareaの説明が必要な気がします{

font: 12px/1 Tahoma, Helvetica, Arial, "5b8b4f53", sans-serif;

}

"5b8b4f53" は "Arial" です。 Firefox と Opera の一部のバージョンでは SimSun の書き込みメソッドがサポートされていないため、SimSun の代わりに Unicode を使用してください。フォントの知識を広める:

フォント エイリアス

システム内のフォントには複数のエイリアスを持つことが許可されています。たとえば、Windows では、Georgia を Georgia MS という名前にすることもできます。これらは実際には同じフォントです。宋王朝の正式名称はシムサンであり、「宋王朝」は単にその愛称です。

仕様によれば、ブラウザはフォント エイリアスを自動的に認識し、それらを正しいフォント ファイルにマップする必要があります。たとえば、font-famliy: SimSun と font-family: "宋体" は同等の効果を持つはずです。残念ながら、多くのブラウザでは以前の定義を正しく実装できないようです...

したがって、ブラウザの互換性を考慮して、「宋王朝の歌」を使用する必要があり、それを Unicode 形式にトランスコードすることで、どのエンコードでも問題なく確保できます。

------------------------------------------------ -----------

必要な友人が簡単に使用できるように、次の表に、一般的に使用される中国語フォントの Unicode エンコードを示します:
Heidi 9ED14F53
Songti 5B8B4F53
Kaiti 69774F53
Microsoft弥平 5FAE8F6F96C59ED1

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。