4

歴史的に、 ISO-8859-1Latin-1 )エンコーディングであると宣伝している多くのWebページには、実際にはWindows-1252エンコーディング(Latin-1の厳密なスーパーセット)のコンテンツが含まれていました。

これは、ブラウザがすべてのLatin-1テキストをWindows-1252であるかのように処理するように動作を更新するのに十分な問題でした。その後、この動作はHTML5[ドラフト]標準に合理化されました。

2つのエンコーディングの違いを示したい一連のページを書いていますが、Latin-1ページが実際にはLatin-1として扱われることはないため、これは不可能のようです。どのブラウザでも、実際にページのエンコーディングを尊重してデモを表示する方法はありますか?

4

1 に答える 1

2

直接の道はないのではないかと心配しています。Operaにはかつてこれに対するオプションがあり、現在のバージョンには(opera:configを介して)特定のエンコーディングを強制し、HTTPヘッダーとすべてをオーバーライドするオプションがあると思いましたが、それでも、iso-8859-1は実際にはwindows-1252を意味します. Opera バージョン 5 と 9 もチェックしましたが、うまくいきませんでした。

ただし、Opera の現在のバージョン (12.02) を使用すると、[表示] → [エンコード] でエンコードを設定できます。「西洋」セット (iso-8859-1 は通常どおり windows-1252 を意味します) では、iso-8859-15 を選択すると、 130 ~ 159 (10 進数) の範囲のバイトが、windows-1252 のように表示されず、表示で実質的に無視されます。したがって、これは多かれ少なかれ、データを純粋に iso-8859-1 として扱うことを意味します。もちろん、iso-8859-1 と iso-8859-15 が異なるいくつかのグラフィック文字を除いて、後者が使用されます。

技術的には、これらのバイトは iso-8859-1 の C1 コントロールを表し、上記のモードでは、Opera は実際にそれらをそのように扱います。HTML では許可されていませんが、通常はブラウザによって無視されます。

于 2012-11-08T06:55:47.177 に答える