我正在尝试让网站在W3C Markup Validator上验证为HTML5。当我使用“按URI验证”选项时,它会产生大量错误,但是当我将HTML复制并粘贴到“通过直接输入验证”时,它会完美地验证。当我在验证器返回的两个源上运行diff时,唯一的区别是Rails真实性令牌(Rails用于验证表单的随机字符串 - 这是预期的。)
我注意到在这两种情况下,我都会收到“在文档级别声明的无字符编码”警告,我在其他网站上看到过,但我一直认为它是HTML5验证器中的错误,因为我有一个合适的元标记:
<meta charset="UTF-8">
大多数错误都与以下内容类似:
它的行为类似于不匹配的引用,但我找不到任何错误,同样,相同的直接输入也能完美验证。
有什么想法在这里发生了什么?谢谢!
答案 0 :(得分:4)
这是W3C Perl层中的known bug。 Validator.nu具有相同的后端,但没有Perl层。
答案 1 :(得分:1)
它可能是验证程序错误,在这种情况下,您的页面可能是验证程序开发人员感兴趣的。请考虑与他们取得联系:http://validator.w3.org/feedback.html
答案 2 :(得分:0)
<meta charset="UTF-8">
请尝试使用此代码:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
答案 3 :(得分:0)
尝试<meta charset="UTF-8" />
,包括收尾正斜杠