HTML的宽松标准是对互联网有益还是有害?

5
我正在阅读O'Reilly的 学习XML 书籍,并读到了以下内容:

在某些方面,HTML 是一种退步。 为了实现真正有用的简单性, 必须放弃通用编码的某些原则。 ...为了回到通用编码的理想状态, 一些人试图将SGML适应于web... 但这太困难了。

这让我想起了 StackOverflow Podcast 上他们所讨论的在浏览器上运行的格式不良好的HTML。
我的问题是,如果标准如今像开发人员希望的那样严格,Internet 是否仍然会如此成功?
6个回答

12
缺乏标准执行并没有丝毫影响Web的采用。如果说有什么效果,那么它是帮助了它。最初设计Web的目的是为了让科学家(通常对编程没什么耐心)发布研究结果。因此,自由解析器使得他们不需要关心标记 - 足够好就行了。
如果Web在科学家中不成功,它永远不会迁移到其他学术领域,也不会从那里传播到更广阔的世界中,今天仍然只是一个学术练习。
但既然它已经在更广泛的世界中出现,我们是否应该加强规范呢?我看不出任何人这样做的动机。浏览器制造商想要市场份额,而他们不会因为对显示正确网页抱怨而获得市场份额。内容站点想要接触人们,但他们不可能只能在Opera中正确显示才能实现这一点。开发者团体,尽管规模不大,却无法满足需求。
此外,前端开发人员之所以能够比视觉设计师赚更多的钱,是因为他们知道各种浏览器的内部情况。如果只有一种正确的方法,那么它可以自动完成,这些人就不再需要了 - 至少不是以程序员的薪水。

尽管我很讨厌你的回答,但不幸的是它是真实的。:( - Arafangion
5
我想到了互联网和电视之间的相似之处。在30年代,科学家们开创了电视发明的先河,并梦想着电视将作为一种媒介将莎士比亚、科学和哲学传播给大众。然而他们得到的却是《与提拉·提奎拉约会》这样的节目。 - Juliet

4

如今网络上大部分的歧义和不一致,不是来自未关闭的标签之类的问题,而是因为CSS语义在不同浏览器之间不一致。即使所有网页都奇迹般地成为格式良好的XML,也不会有太多帮助。


4

html只是简单地“标记”文本,而不是具有运算符、循环、函数和其他常见编程语言元素的语言,这正是它能够被松散解释的原因。

可以将这种松散解释与使标记语言更易于访问和使用从而使更多“未受过教育”的人们接触到该语言联系起来。

我个人认为,这与互联网的成功关系不大。相反,是通信和信息共享的能力使得互联网“成功”。


4

这给互联网带来了很大的伤害。

我记得曾经听到过一次播客采访,采访对象是参与 HTML 2.0 规范制定的人。如果我没记错的话,当时有一个关于解析器严格遵守标准的大辩论。

最终胜出方采用了“良好的实现系统应该在接受输入方面宽容,但在输出方面严格”的方法,当时这种方法非常流行。

据我所知,现在很多人认为这种方法过于简单化了——从原则上来说,这听起来不错,但实际运用中很少有效。

依我看,即使从一开始 HTML 标准就过于严格,对于大多数人来说也足够简单易懂。开始时可能会稍微慢一些,但从长远来看,将节省数十亿美元的时间和金钱成本。


这也意味着新的网络浏览器进入市场变得非常困难。 - Arafangion
我完全不同意。互联网革命之所以发生,其中一个原因是我的母亲能够编写HTML网页。当然,HTML可以更严格,但是一些更容易编写的东西将从网络效应中受益。 - Jon Ericson

2
有一个原则描述了HTML和Web浏览器如何能够成功地工作和互操作:在接受内容时要开明,而在输出内容时要保守。
"正确"和"可接受"的HTML之间需要一些余地。因为HTML旨在是"人类+rw",我们不应该感到惊讶,有这么多种标记语言。灵活性是HTML在人类需要参与的任何地方的优点。
然而,这种灵活性增加了处理开销,当您需要创建机器可用的内容时,很难证明这是合理的。这就是XHTML和XML存在的原因:它们取代了某些灵活性,以换取可预测的输入。

1
如果HTML更加严格,就会有更简单的方法来产生所需的网络效应,使互联网成为主流。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接