特殊字符UTF8不在safari中显示

时间:2013-10-20 23:59:56

标签: safari special-characters htmlspecialchars

好吧,我认为这是一个容易谷歌的东西,但我找到的答案,并没有解决我的问题

在Chrome中,我的RSS Feed看起来像这样

"¿Qué es un serum antimanchas?" 

但所有其他角色都没问题。

在Safari中,oposit这条线看起来很好,但其余字符都是错误的...它们看起来像

Espect�culo

我在我的标题上有这个假设,它无法找到问题,

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es">
<head>


  <title>Pcweb</title>

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

注意:所有文件都在sublime编辑器中以UTF8编码保存。

1 个答案:

答案 0 :(得分:1)

您在Chrome中看到的是UTF-8编码数据被误解为ISO-8859-1或Windows-1252编码。例如,U + 00BF“¿”是UTF-8中的0xC2 0xBF。将其作为ISO-8859-1数据处理,你得到U + 00C2“”U + 00BF“¿”。

从给定的数据来看,不可能说出了什么问题。我的猜测是数据是使用HTTP Content-Type标头发送的,该标头声明编码为ISO-8859-1。验证这一假设需要URL。

字符“ ”表示字符级别的数据错误:数据包含一个字节,该字节在应用的字符编码中不表示任何字符或字符的多字节表示的一部分。当ISO-8859-1被误解为UTF-8编码时,最常遇到这种情况。

似乎数据包含UTF-8编码数据和ISO-8859-1编码数据的混合。修复方法是修改系统,使其始终始终使用UTF-8,或者至少在编写数据时将所有内容转换为UTF-8,以便发送给用户代理。