繁体   English   中英

是否有比 w3c 验证器更好的 html 标准验证方法?

[英]Is there a better approach to html standards validation than w3c validator?

当然,这是一个非常通用的问题,但我想知道 w3c 验证是否被认为是 html 验证的最佳实践,或者是否有更好的方法来确保符合当代标准的标记。

当我注意到MDN 页面(我认为该网站对其编码实践非常严格)上重复的 ID 时,就出现了这个问题。 这似乎是他们如何生成页面部分的人工制品。

奇怪的是,我在 w3c 验证器上验证了页面的代码,并且有各种“错误”表明 MDN 只是忽略了某个属性或值无效。 通常,这些与rel属性的看似适当的使用有关。

我想知道有效的语义标记标准是否更重要,或者是否有一种新的理想方法来进行代码验证和标准化,而不是依赖 w3c 验证。

当前W3C HTML Checker (验证器)的维护者在这里。 我认为了解当前 HTML 检查器的预期目的很重要,这与传统 W3C 标记验证器的目的不同。

检查器的用途记录在https://validator.w3.org/nu/about.html#why-validate

通过一致性检查器运行 HTML 文档的核心原因很简单:捕捉意外错误(否则您可能会错过的错误),以便您可以修复它们。

除此之外,HTML 规范中的一些文档一致性要求(有效性规则)可以帮助您和文档的用户避免某些类型的潜在问题。

有一些标记情况被定义为错误,因为它们是可访问性、可用性、互操作性、安全性或可维护性方面的潜在问题,或者因为它们可能导致性能不佳,或者可能导致您的脚本以难以解决的方式失败。 除此之外,一些标记情况被定义为错误,因为它们可能导致您在 HTML 解析和错误处理行为中遇到潜在的问题——也就是说,您最终会在 DOM 中得到一些不直观的、意外的结果

验证您的文档会提醒您注意这些潜在问题。

因此,就您关于“是确保符合当代标准的标记的更好方法”的问题而言,答案是这不是一个非此即彼的事情; 有多种方法,W3C HTML Checker 只是其中之一,它的目标不是成为确定任何事情的唯一方法,而是帮助您发现可能会错过的错误,否则可能会导致意外问题你的用户。


至于就特定设备问题或浏览器实现问题发出警报的方法,我们没有很好的自动检查工具,但有几件事有很大帮助:

  • https://caniuse.com/ — 有关不同浏览器、这些浏览器的不同版本以及移动设备与桌面浏览器版本对特定 Web 运行时功能的支持级别的详细信息

  • https://wptdashboard.appspot.com/——当前在所有主要浏览器引擎上针对数十个 Web 运行时功能/规范的测试结果; 如果https://caniuse.com/没有有关特定功能的信息,您可以查看此仪表板并浏览到具有该功能测试的目录,并查看浏览器是否通过了该功能的测试

但就我们确实有用于检查其他事情的优秀自动化工具而言,这里有两个:

我最近遇到了上面提到的W3C HTML Checker 的问题 我尊重这个验证器的作者所做的大量工作,但它不允许我以任何方式标记<script type="text/vbscript" src="file.vbs"> 据说将type值更改为空字符串、JavaScript MIME 类型或 module ,这使我的页面无用。

我知道 VBScript 语言现在很少使用,它只是一个测试页面,但让我与您分享不那么棘手的替代方案,与第一个用于 HTML 错误检查的替代方案一样好。

当前JsonFormatter (验证器)的维护者在这里

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM