0

状況: かなり大規模な Web サイト (Windows Server 2003) を所有しており、UTF-8 のみを使用するように標準化したいと考えています。現在、あらゆる種類の文字エンコーディングを使用しており、特定のページに正方形が表示され始めた後、使用するデータベースを含め、使用する文字エンコーディングは 1 つ (utf-8) のみであると判断しました。これは、ウェブサイトを維持しやすくするためです。すべてを utf-8 に変更した後、新しい正方形が表示されても問題ありません。それを何らかの方法で修正する必要があります (もちろん、文字エンコーディングを変更する必要はありません)。

文字エンコーディングをutf-8に設定するhttp応答ヘッダーを追加しました。ブラウザのウェブサイト オプションに、utf-8 が表示されるようになりました。

問題は、.css ファイルが機能しなくなったように見えることです (タグを使用すると、その場で .css を指定でき、機能します)。これらの行を削除すると:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

.css ファイルには効果がありますが、応答ヘッダーを変更する前と同じようにフォントが表示されません。また、これらの行を削除したくありません。

utf-8 に設定すると、.css ファイルのリンクが使用されなくなる可能性はありますか? BOM と文字エンコードのエディターのオプションを変更しようとしましたが、問題を解決できません。私は何を間違っていますか?おそらく、その応答ヘッダーを追加して、まったく異なる方法で Web サイトを標準化するべきではないでしょうか?

編集:新たに発見:前に文字を追加すると

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN

ラインそれは動作します! ここで何が起こっているのか知りたいです。

4

1 に答える 1

0

UTF-8 以外の文字が HTML を壊している可能性があります。". _ 実際の HTML を見なければ、推測することしかできません。

Firebug などのデバッガーを使用して HTML を検査すると、その要素の syling がどこから来ているかがわかります。実際に壊れているかどうかを確認するためにバリデーターを実行することもできます。

于 2012-05-25T13:24:56.633 に答える