2

在 Web 应用程序中,有一个具有以下编码的 HTML 页面:

<meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
<meta content="en" http-equiv="Content-language">
<meta content="text/html; charset=UTF-8" http-equiv="Content-type">

实际发生的事情是在这个页面上我试图显示一个肥皂请求的结果。为了响应这个肥皂请求,我得到以下代码:

&#232;&#233;&#224;&#249;&#236;&#231;&#242;

对于以下字符:

  èéàùìçò

令人惊讶的是,除了页面编码是 UTF-8 之外,这些字符在 HTML 页面上正确显示如下:

èéàùìçò instead of ������� 

我无法理解这些代码如何正确转换为 UTF-8 格式,因为这些代码属于 ISO-8859-15。知道吗?

4

1 回答 1

2

诸如此类的字符引用&#232;具有基于字符的 Unicode 编号的含义,完全独立于页面的字符编码。这一直是 HTML 的原则,只有非常早期的浏览器有时会出错。这是使用字符引用的主要好处之一。

Unicode 中的前 256 个代码位置与 ISO-8859-1 代码位置相同,而 ISO-8859-15 代码位置又与 ISO-8859-15 代码位置相同,除了几个字符(不包括您的示例中的字符)。

于 2013-03-22T10:19:51.457 回答