html w3c validator
v1.7.0
用于使用 validator.w3.org 验证 HTML 页面的 CLI。
html-w3c-validator是一个 CLI 工具,用于使用 validator.w3.org 验证 HTML 页面。
您可以使用 JavaScript 框架或仅使用 HTML,但您应该始终验证您的生产 HTML ,并且此验证应该是 CI/CD 管道(测试、linting 等)的一部分。
引用自https://validator.w3.org/docs/help.html#why-validate:
计算机编程的重要格言之一是:“对你产生的东西要保守;对你接受的东西要自由。”
浏览器遵循这条格言的后半部分,接受网页并尝试显示它们,即使它们不是合法的 HTML。通常这意味着浏览器将尝试对您可能的意思进行有根据的猜测。问题是不同的浏览器(甚至同一浏览器的不同版本)会对相同的非法构造做出不同的猜测;更糟糕的是,如果你的 HTML 确实是病态的,浏览器可能会陷入无可救药的混乱并产生混乱,甚至崩溃。
您可以将html-w3c-validator与 start-server-and-test 结合起来来验证项目的 HTML 页面。
Node.js >= 16.0.0
npm install --save-dev html-w3c-validator start-server-and-test
package.json
{
"scripts" : {
// Command to start the server serving your HTML pages (e.g: using vercel/serve)
"start" : "serve "./build"" ,
// Command to validate your HTML pages
"test:html-w3c-validator" : "start-server-and-test "start" "http://127.0.0.1:3000" "html-w3c-validator"" ,
} ,
}
.html-w3c-validatorrc.json
{
"$schema" : "./node_modules/html-w3c-validator/schema/schema.json" ,
// URLs to validate.
"urls" : [ "http://127.0.0.1:3000/" , "http://127.0.0.1:3000/about" ] ,
// Files to validate.
"files" : [ "./index.html" , "./about.html" ] ,
// Specify the severities of the validator messages to report. (default: ["warning", "error"])
"severities" : [ "info" , "warning" , "error" ] ,
}
node --run test:html-w3c-validator
输出示例(如果成功):
✔ Validating http://127.0.0.1:3000/
✔ Validating http://127.0.0.1:3000/about
Success: HTML validation (W3C) passed! ?
实际使用请参见 ./example 文件夹。
--current-working-directory <path> The current working directory (default: `process.cwd()`).
-V, --version Output the version number.
-h, --help Display help for command.
任何人都可以帮助改进项目、提交功能请求、错误报告,甚至纠正简单的拼写错误。
贡献步骤可以在 CONTRIBUTING.md 文件中找到。
麻省理工学院