HTML 4和HTML 5之间的主要区别是什么?


145

HTML4HTML5草案之间的主要区别是什么?

请保留与更改的语法以及添加/删除的html元素相关的答案。

Answers:


197

HTML5有几个目标,使其有别于HTML4。

处理格式错误文件的一致性

最主要的是一致的,定义好的错误处理。如您所知,HTML专门支持“标签汤”,即能够编写格式错误的代码并将其更正为有效文档的功能。问题在于这样做的规则没有在任何地方写下。当新的浏览器供应商想要进入市场时,他们只需要在各种浏览器(尤其是IE)中测试格式错误的文档并对其错误处理进行反向工程即可。如果不这样做,那么许多页面将无法正确显示(估计至少有一些格式错误,将大约90%的页面放在网络上)。

因此,HTML5试图发现并整理这种错误处理,以便浏览器开发人员都可以标准化并大大减少一致显示内容所需的时间和金钱。同样,在HTML不再以文档格式消失之后的很长一段时间内,历史学家可能仍想阅读我们的文档,而拥有一个完全定义的解析算法将对此有很大的帮助。

更好的Web应用程序功能

HTML5的次要目标是通过HTML,CSS和Javascript开发浏览器成为应用程序平台的能力。许多元素直接添加到目前(在HTML4)闪存或基于JS-黑客,如语言<canvas><video><audio>。有用的东西,例如本地存储(一个可通过js访问的浏览器内置的键值数据库,用于存储cookie不能保存的信息),新的输入类型(例如日期,浏览器可以通过它显示简单的用户界面),以便我们不必使用我们基于js的日历日期选择器),并且浏览器支持的表单验证将使开发人员可以更轻松地开发Web应用程序,并为用户加快开发速度(因为许多功能都将得到本地支持,而不是通过JavaScript入侵)。

改进的元素语义

还有许多其他较小的努力发生在HTML5中,如现有元素定义更好的语义角色(<strong><em>现在实际上意味着不同的东西,甚至<b><i>具有解析传统文档时,应该工作以及模糊语义)和有用的添加新元素语义- ,<article><section><header><aside>并且<nav>应该取代大部分的<div>网页上使用了s,使网页有点更多的语义,但更重要的,更易于阅读。无需再费劲地扫描就可以看到随机将</div>要关闭的内容,取而代之的是您将拥有一个明显的</header></article>,从而使文档的结构更加直观。


14
请通过编辑答案来突出显示标签和句子。(这只是一个建议,因为当我阅读本文时,这让我很累。)
穆罕默德·法萨尔

44

维基百科

  • 面向灵活解析和兼容性的新解析规则
  • 新元素–分区,视频,进度,导航,仪表,时间,一边,画布
  • 新的输入属性-日期和时间,电子邮件,网址
  • 新属性– ping,字符集,异步
  • 全局属性(可应用于每个元素)– id,tabindex,重复
  • 弃用的不适用元素-中心,字体,删除


11

HTML5引入了许多有助于创建Web应用程序的API。这些可以与为应用程序引入的新元素一起使用:

  • 用于播放视频和音频的API,可以与新的视频和音频元素一起使用。
  • 启用脱机Web应用程序的API。
  • 一种API,允许Web应用程序为某些协议或媒体类型注册自己。
  • 编辑API与新的全局变量结合 contenteditable属性。
  • 拖放API与 draggable属性。
  • 公开历史记录并允许页面添加到历史记录以防止破坏后退按钮的API。

3

您可能对此HTML5元素和属性列表感兴趣。

另外,请注意,它是“ HTML 4”,而不是“ HTML4”。确实,对于HTML 5,两个变体都被使用,但是在含义上有重要的区别。HTML 5是W3C规范的名称,而“ HTML5”是那些text/html遵循该规范的MIME类型的HTML文件的文档类型。XHTML 5与XHTML5也是一样。


1
您似乎暗示XHTML 5存在,但事实并非如此。XHTML的最新W3C建议是1.1,而2.0处于起草阶段。
大卫·里弗斯

4
@David Rivers:确实存在。XHTML5是HTML5的XML序列化
Mathias Bynens 2010年

2
@David Rivers:顺便说一句,XHTML 2不再处于草稿阶段。已停止使用HTML5
Mathias Bynens 2010年

谢谢。我也刚刚发现了这一点,简直不敢相信自己一直处于循环之外。这是艰难的一年!
戴维·里弗斯


0

HTML 5邀请您为代码添加很多语义值。此外,还有用于嵌入多媒体内容的本机解决方案。

其余的很重要,但是它是更多的技术糖,可以帮助您避免使用客户端编程语言执行相同的操作。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.