如何解决validateator.w3.org报告标记错误-检测到的字符编码为“ utf-8”
| 针对www.besaltnlight.ca的validator.w3.org报告: 字符编码覆盖生效! 检测到的字符编码\“ utf-8 \”已被取消,取而代之的是\“ iso-8859-1 \”。 php代码输出iso-8859-1,并将php设置为默认字符集。 是什么导致此问题?我使用的文档类型错误吗? 哦,这会导致IE中的怪癖模式吗? 谢谢你的帮助。 格里解决方法
该文档以UTF-8编码。它具有字节顺序标记,智能引号和省略号,所有这些均以UTF-8正确编码。它以两个字节的顺序标记开头,该标记无效。您必须删除其中一个,并且验证程序还说UTF-8文档中存在BOM可能会造成混淆,因此您可以将它们都删除。
由于您要输出UTF-8,因此必须将HTTP标头更改为:
Content-type: text/html; charset=utf-8
由于缺少该标头,因此您迫使浏览器进行猜测。此外,必须将meta标签更改为
<meta http-equiv=\"Content-type\" content=\"text/html; charset=utf-8\" />
出于同样的原因。
, 您的输出以Unicode字节顺序标记(以UTF-8编码)开头。
这可能是您的PHP文件或主文件包含的任何PHP文件的前几个字节。您的编辑器甚至可能不会显示它们。解释为ISO-8859-1,输出的开始看起来像<!DOCTYPE html
,它们甚至是两个字节的顺序标记,一个接一个。
正如jleedev所说,请确保您的文件确实以Latin-1编码,或者将编码声明为UTF-8。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。