为什么一些主要网站使用无效的HTML?

net*_*rox 29 html css validation xhtml web-standards

我注意到许多网站,甚至谷歌和一些银行网站都有写得不好的HTML,没有关于属性值的引号,或者使用诸如&符号之类的字符未在链接中正确转义.换句话说,许多人使用无法验证的标记.

我很好奇他们的原因.HTML有简单的规则,它们似乎并不遵循这些规则,这令人难以置信.或者他们使用的程序只是吐出代码?

Tri*_*ych 110

大多数人都得到了基本正确的答案 - 当你每天服务一页十亿次时规则是不同的.字节开始变得重要,目前的压缩程度清楚地表明Google关注节省带宽.

几点:

其一,人们暗示谷歌节省带宽的原因是财务上的.不太可能.即使每天保存在Google搜索结果页面上的几TB甚至数量也只是其所有属性的总和:Youtube,Blogger,地图,Gmail等等.更有可能的是Google想要搜索结果页面,特别是,尽可能快地在尽可能多的设备上加载.是的,当页面每天加载十亿次时,字节很重要,但当用户在撒哈拉沙漠中使用卫星电话并努力获得1kbps时,字节也很重要.

第二,XHTML的编码标准之间存在差异,以及自1994年以来每个浏览器实际工作的实际标准.这里,Google的规模很重要,因为大多数Web开发人员都乐于忽略任何麻烦的浏览器占其用户的不到0.1%,对谷歌而言,0.1%可能是50万人.他们很重要.所以他们的搜索结果页面应该适用于IE 5.5.这就是他们仍然在许多高价值页面上使用表格进行布局的原因 - 它仍然是在大量浏览器上"正常工作"的布局.

作为一项练习,在谷歌实习期间,我编写了一个完全兼容的XHTML/CSS版Google搜索结果页面并展示了它.最终问题出现了 - 我们为什么要提供这样的hodge-podge HTML?我们难道不应该引领网络开发社区走向标准吗?我得到的答案几乎是上面的第二点.Google DOES遵循的标准 - 不是网络乌托邦的不太好的标准,而是这个必须工作 - 绝对无处不在的现实标准.


Tat*_*nen 10

谷歌有一个很好的理由来编写糟糕的HTML - 他们从搜索页面中删除的每个角色每天都会节省大概数十亿字节的带宽.


Che*_*try 6

由于被前面所讨论的,谷歌会为带宽的原因.

至于银行和其他企业网站,可能有多种原因 -

  1. CMS吐出无效的HTML
  2. Dreamweaver,足够说.
  3. 倾向于使用设计为甚至在古老浏览器上工作的商业UI组件,因此他们在谨慎方面犯错误.
  4. 不强调良好的HTML和Javascript实践.他们中的许多人往往是Java或.NET商店,没有优秀的UI开发人员.
  5. 设计糟糕的.NET用户控件和JSTL标记库.

  • 你忘记了MS Frontpage.生成比Dreamweaver想象的更糟糕的代码.不能告诉你我浪费了多少小时从Frontpage清理别人的代码只是因为所有垃圾几乎无法读取. (2认同)
  • 或者将Word文档导出为HTML并将其作为网页上载.丑陋地狱. (2认同)