html - 将浏览器切换到严格模式以编写正确的 html 代码

标签 html w3c-validation

是否可以将浏览器切换到“严格模式”以便至少在开发阶段编写正确的代码?

我总是看到无效的、脏的 html 代码(除了糟糕的 javascript 和 css),我觉得原因之一也是所有浏览器的高容忍度。所以至少我会准备好在使用浏览器开发页面时采用更严格的模式,以迫使自己使用正确的代码。

任何已知的浏览器都有类似的东西吗?

我知道 w3c-validator 但老实说谁经常使用它?

浏览器和验证器之间是否存在某种常规接口(interface)?是否有自动测试验证的开发环境?

最佳答案

Is there anything like that with any of the known browser? Is there maybe some sort of regular interface between browser and validator? Are there any development environments where the validation is tested automatically?

所有这些问题的答案都是“否”。没有浏览器像您描述的那样具有任何内置集成。有(或曾有)一些浏览器扩展会获取您加载的每个文档并将其发送到 W3C 验证器进行检查,但是使用其中一个扩展(或任何其他在后台自动将内容发送到 W3C 验证器的东西)是这是让 W3C 阻止您的 IP 地址(或整个公司网络的 IP 地址范围)滥用 W3C 服务的好方法。

I know about w3c-validator but honestly who is really using this frequently?

W3C 验证器目前每秒处理大约 17 个请求——每天大约 150 万个文档——所以我猜有相当多的人经常使用它。

I see always invalid, dirty html code… I would be ready to have a stricter mode while I use the browser for the development for the pages in order to force myself to proper code.

我不确定您所说的“肮脏的 html 代码”或“正确的代码”具体指的是什么,但我可以说有很多标记用例并不坏或无效,但有些人错误地认为它们是坏的。

例如,有些人认为每个<p>开始标记应始终具有匹配的 </p>结束标记,但事实是,从创建 HTML 开始,它就从未要求文档始终具有匹配的 </p>所有情况下的结束标记(事实上,在创建 HTML 时,<p> 元素基本上是一个空元素,而不是容器,因此 <p> 标记只是一个标记。

另一个被一些人错误地认为是不好的例子是未加引号的属性值;例如,<link rel=stylesheet …> .但事实是,除非属性值包含空格,否则通常不需要用引号引起来。所以实际上像 <link rel=stylesheet …> 这样的案例实际上没有任何问题。 .

因此,基本上没有必要尝试寻找一种工具或机制来检查此类情况,因为这些情况实际上并不是真正的问题。

总而言之,HTML 规范确实将一些标记案例定义为错误,而这些案例正是 W3C 验证器检查的内容。

因此,如果您想发现真正的问题并能够解决它们,答案非常简单:使用 W3C 验证器。

披露:我是 W3C 验证器的维护者。 😀

关于html - 将浏览器切换到严格模式以编写正确的 html 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31709200/

相关文章:

css - 仅在 mozilla 中出现错误

html - 有没有办法使嵌套列表有效?

java - 如何验证内部网页上的 CSS?

html - W3C 验证器提示重复的 div

html - 如何将按钮的 div 编码为 Bootstrap 响应?

javascript - jQuery.remove() 删除错误的元素

CSS2.1 验证字体粗细失败

javascript - WebRTC session 可以在星形拓扑中使用 html5-JS 客户端吗?

php - html 表并用带有空行的 php 填充

javascript - JS : Is there a way to make a cell in a grid not clickable?