w3-include-html 导致来自 https://validator.w3.org/ 的验证错误
w3-include-html causing error in validation from https://validator.w3.org/
我在每个页面的页脚中使用 w3 include。页面加载正常,一切正常,除非我 运行 通过 https://validator.w3.org/ 验证代码时出现此错误:
"Error: Attribute w3-include-html not allowed on element div at this point."
<!--FOOTER-->
<div w3-include-html="../includes/footer.html"></div>
<!--Include HTML Files-->
<script>
w3.includeHTML();
</script>
w3 include 没有得到广泛支持吗?我应该使用 PHP 还是 asp.net 来执行此操作?或 ajax?
您可能正在使用 a script offered by w3schools.com。请注意,w3schools 与 W3C 无关。这只是一个自定义 JavaScript,它使用了一个无效的属性,该属性可能会在 JS 执行后被替换。
W3CHTML验证器不执行JavaScript,所以在JS替换属性后看不到文档
可能的解决方案:
如果你想在 JavaScript 执行后验证你的 HTML,你可以在浏览器中打开你的页面,标记所有内容,打开选择的源代码, 并将此标记复制粘贴到 W3C 验证器中。
如果您只想让有效文档 before/without 执行 JavaScript,您可以更改脚本以使用 data-*
attribute,例如 data-include-html
.
如果你想支持不执行 JavaScript 的用户和 bots/services,你不应该依赖 JavaScript。使用服务器端编程语言(如 PHP)可能会有所帮助,但是(取决于您的用例)您也可以只生成纯静态 HTML 文件,例如,借助 static site generator.
我在每个页面的页脚中使用 w3 include。页面加载正常,一切正常,除非我 运行 通过 https://validator.w3.org/ 验证代码时出现此错误:
"Error: Attribute w3-include-html not allowed on element div at this point."
<!--FOOTER-->
<div w3-include-html="../includes/footer.html"></div>
<!--Include HTML Files-->
<script>
w3.includeHTML();
</script>
w3 include 没有得到广泛支持吗?我应该使用 PHP 还是 asp.net 来执行此操作?或 ajax?
您可能正在使用 a script offered by w3schools.com。请注意,w3schools 与 W3C 无关。这只是一个自定义 JavaScript,它使用了一个无效的属性,该属性可能会在 JS 执行后被替换。
W3CHTML验证器不执行JavaScript,所以在JS替换属性后看不到文档
可能的解决方案:
如果你想在 JavaScript 执行后验证你的 HTML,你可以在浏览器中打开你的页面,标记所有内容,打开选择的源代码, 并将此标记复制粘贴到 W3C 验证器中。
如果您只想让有效文档 before/without 执行 JavaScript,您可以更改脚本以使用
data-*
attribute,例如data-include-html
.如果你想支持不执行 JavaScript 的用户和 bots/services,你不应该依赖 JavaScript。使用服务器端编程语言(如 PHP)可能会有所帮助,但是(取决于您的用例)您也可以只生成纯静态 HTML 文件,例如,借助 static site generator.