对于某些网站,我注意到 Firefox 的“查看/字符编码”菜单被禁用,为什么?
可以启用它吗?
答案1
这是由于修复了错误 234628,当视图>字符编码菜单不起作用或不需要时将其禁用(例如 XML)。
具体来说,如果你看看评论#63:
至于存在 UTF-8 BOM 的情况,让 BOM 优先于菜单是有意义的
这物料清单用于识别 Unicode 编码文档中的字节顺序。
给出的理由可概括如下:
Gecko(Firefox 的渲染引擎)不支持任何其他将 BOM 渲染为有效 HTML 开头(
<html
或<!DOCTYPE
等等)的编码。其他主流浏览器(IE6+、基于 WebKit 的 [Chrome 等])也有同样的问题。例如,如果您尝试更改 Chrome 上的编码,它只会重置回 UTF-8。
否则可能会扰乱表单输入。
您提供的示例页面以三个 UTF-8 BOM 字节开头。如果您保存页面并在十六进制编辑器中打开 HTML 文件,就会看到这一点。BOM 明确将其标识为 UTF-8 文档,以任何其他编码打开它都不会产生正确的 HTML 页面。
您可以0xEF
0xBB
0xBF
在左侧看到 BOM,如维基百科所述。右侧显示看起来像什么当呈现为 ANSI/CP1252。
如果您确实想要,您可以保存文件,删除有问题的 BOM 并打开文件。或者您可以设置代理(Fiddler2 非常适合此操作),它将在文件到达浏览器之前拦截并修改文件。但是,这些并不是很好的解决方案,而且很可能只会造成更多问题。如果您遇到编码问题,最好的办法是联系网站维护人员。无论如何,我们都应该尽可能转向 Unicode,而不是使用较旧且更有限的编码标准。
答案2
这可能是一个错误。Chromium有类似的问题几年前。