php - 未先查看文档类型就找到了非空格字符。预期 <!DOCTYPE html>

标签 php html unix w3c-validation

我测试了我的 HTML5 webpage在 w3c 验证器上得到 errors

"Non-space characters found without seeing a doctype first. Expected <!DOCTYPE html>"

但是如您所见,我首先使用的是 doctype。我在这里找到了一个帖子 HTML validation error: Non-space characters found before DOCTYPE说一些关于 BOM 文件的事情。 我不确定我的源代码中是否可以有 BOM 文件。

有什么方法可以使用 unix 命令递归地查找给定目录的 BOM 文件吗?

是否有任何其他原因向我显示提到的错误?

更新:

根据观察者的建议,根据命令

grep -rl $'\xEF\xBB\xBF' .

来自主题 Elegant way to search for UTF-8 files with BOM?我的源代码中没有 BOM 源代码文件。所以这可能与 BOM 文件无关,一定是其他原因导致了这个错误。

最佳答案

您的页面在您的 DOCTYPE 之前确实包含字符串 Cannot detect language.

它似乎并不总是包含在交付给所有浏览器的 HTML 中。我刚刚用 Web (formerly Epiphany) 看到了它, 但现在它不见了。

使用 Wget 下载页面或 cURL可能仍会向您展示(对我仍然如此)。

关于php - 未先查看文档类型就找到了非空格字符。预期 &lt;!DOCTYPE html>,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25295799/

相关文章:

javascript - 根据数量用矩形填充页面

unix - 是否可以创建指向目录中最新文件的符号链接(symbolic link)?

php - 使用 graph api 和 php 获取大型 Facebook 页面个人资料图片

php - 跨平台 PHP 注意事项?

php - 如何在codeigniter中保存和访问可重用的数据数组?

c - 如何使用 exec 或 execv 运行 find 命令

c - UNIX shell 段错误

php - 实时发布谷歌分析报告

html - 如何在 WordPress 中通过 CSS 加载图像

HTML5 Input type=Number Polyfill 在 IE10 中不工作