【问题标题】:HTML UTF-8 encodingHTML UTF-8 编码
【发布时间】:2012-09-22 03:19:59
【问题描述】:

当我在编辑器 (Notepad++) 中将 HTML 文件保存为“utf-8”编码时,元标记字符集 (=ISO-8859-2) 似乎被浏览器忽略(字符集始终设置为“utf-8 ",无论我在元标记中设置了哪种编码)

当我将此文档另存为“ANSI”编码文件更改标签字符集时,更有趣的是...

你能解释一下这种行为吗?

【问题讨论】:

  • 如果浏览器检测到 utf-8 编码文件,可能会覆盖编码元标记?如果它已经是 utf-8 编码的,我认为您不需要将其更改为 ISO-8859-2。
  • 如果浏览器的字符集检测检测到文档的字符集为 UTF-8 或使用 BOM (ByteOrderMark) 保存,为什么它应该信任您的字符集?
  • 你为什么要在文件编码的问题上向浏览器撒谎?另外,您使用什么 Content-Type 提供文件?

标签: html


【解决方案1】:

Notepad++ 中的“UTF-8”实际上表示“带有BOM 的UTF-8”。领先的 BOM 很可能会触发 UTF-8,不管其他内容是什么,因为没有其他文档应该以该特定字节序列开头。试试另存为“UTF-8 without BOM”看看有什么区别。

【讨论】:

    【解决方案2】:

    您可以使用 META。像这样:

    <head>
    <meta charset="utf-8">
    </head>
    

    【讨论】:

      猜你喜欢
      • 2014-02-22
      • 1970-01-01
      • 2016-09-08
      • 2011-10-30
      • 2012-11-07
      • 1970-01-01
      • 1970-01-01
      • 2015-03-04
      • 2016-07-05
      相关资源
      最近更新 更多