强制浏览器显示ISO-8859-1而不解释为Windows-1252

时间:2012-11-07 23:31:09

标签: browser character-encoding iso-8859-1 windows-1252

从历史上看,许多宣传自己为ISO-8859-1 Latin-1 )编码的网页实际上都包含Windows-1252编码内容(这是严格的拉丁语-1的超集。

这足以解决浏览器更新其行为以将所有Latin-1文本视为Windows-1252的问题。然后将此行为合理化为HTML5 [draft] standard

我正在编写一组页面,我想在其中显示两种编码之间的区别,但这似乎是不可能的,因为我的Latin-1页面实际上从未被视为Latin-1。在任何浏览器中,有什么方法可以强制实施页面编码并显示演示?

1 个答案:

答案 0 :(得分:2)

我担心没有直接的方法。我认为Opera曾经有一个选项,它的当前版本有一个选项(通过opera:config)强制一个特定的编码,覆盖HTTP头和所有,但即使在那里,iso-8859-1实际上意味着Windows-1252。我也检查了Opera版本5和9,没有运气。

但是使用当前版本的Opera(12.02),您可以通过View→Encoding设置编码,并在“Western”设置中(其中iso-8859-1像往常一样意味着windows-1252),选择iso-8859 -15导致在显示中有效地忽略130-159(十进制)字节的范围,而不是按照windows-1252显示。所以这或多或少意味着将数据视为真正的iso-8859-1 - 除了iso-8859-1和iso-8859-15不同的少数图形字符,后者被使用。

从技术上讲,这些字节代表iso-8859-1中的C1控件,并且在上述模式中,Opera实际上以这种方式对待它们。它们在HTML中是不允许的,但通常被浏览器忽略。