Html编码默认为" Western(ISO-8859-1)"本地

时间:2011-12-06 12:52:20

标签: html xhtml utf-8 iso-8859-1

假设我在目录D:\ Experimental:

中的被调用索引中有以下文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
    "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" >
  <head>
    <title>Minimal XHTML 1.1 Document</title>
  </head>
  <body>
    <p>This is a minimal <a href="http://www.w3.org/TR/xhtml11">XHTML 1.1</a> document.</p>
  </body>
</html>

如果我打开链接

file:///D:/experimental/index.html

我看到了html,但似乎字符编码默认为Western(ISO-8859-1),当我点击查看时我可以看到这一点 - &gt; firefox中的字符编码。

我想以UTF-8显示,因为Western(ISO-8859-1)没有正确显示某些字符。有谁知道如何解决这个问题?

3 个答案:

答案 0 :(得分:2)

你应该包括:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>

HEAD元素中。

修改 我刚刚在Mac上的Firefox中尝试过您的示例,即使没有meta标记,它也会正确地将文档解释为UTF-8。 Standard似乎表明它应该使用XML处理指令,但应该也使用正确的HTTP头。由于您未发送标头(因为您未使用HTTP),因此可以使用meta标记指定它们。

答案 1 :(得分:1)

也许尝试添加

<meta http-equiv="content-type" content="text/html;charset=utf-8" />

<head>部分中的

答案 2 :(得分:1)

从磁盘加载文件时,您的浏览器没有HTTP Content-Type标头来读取编码,因此它猜测。要猜测文档编码,它使用您的操作系统当前编码,文件中的实际字节和文件本身内的信息。

正如乔纳森所写,你可以添加一个

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

元素将帮助浏览器使用正确的内容类型。无论如何,请注意,如果您的文档是从配置错误的HTTP服务器发送的,那么浏览器通常会忽略该元素,该服务器明确指定Content-Type标头的另一种编码。