問題の説明:
この問題は通常、UTF-8 エンコーディングで開発するときに発生します。
· IE では、ページ内に余分な空白行があることがわかりますが、CSS が原因である可能性は排除されています。
·Firefox 用 Firebug プラグインの DOM ツリーを見ると、HTML に余分な空白行があることがわかりますが、ページ スタイルには影響しません。
·UltraEdit の下の 16 進数の下にページ コードを配置して見てみると、空白が生成された場所に「锘? 」文字が表示されますが、元の「 < 」記号が消えていることがわかります。
単一ページの場合は、ページの最初の文字位置に表示されます。
インクルード ファイルに含まれる場合は、インクルード ファイルの最初の文字位置にあります。
----------
例証します:
これは、UTF-8 署名によって引き起こされる問題です。
BOM (バイト オーダー マーク) とも呼ばれる UTF-8 署名は、UTF エンコード スキームのエンコードを識別するために使用される標準マークです。複数のファイルに署名が設定されている場合、バイナリ ストリームには複数の UTF-8 署名が含まれることになり、IE は複数の UTF-8 署名を認識できないため、一部のプログラム処理では代わりに空白行を使用します。 。
W3C 公式説明: http://www.w3.org/International/questions/qa-utf8-bom