HTML4和HTML5 draft之间的主要区别是什么?
请保留与更改的语法和添加/删除的html元素相关的答案。
HTML5有几个目标,可以将它与HTML4区分开来。
主要的是一致的,定义的错误处理。如您所知,HTML特意支持“标记汤”,或者编写格式错误的代码并将其更正为有效文档的能力。问题是执行此操作的规则不会在任何地方写下来。当一个新的浏览器供应商想要进入市场时,他们只需要在各种浏览器(尤其是IE)中测试格式错误的文档并对其错误处理进行反向工程。如果他们不这样做,那么许多页面将无法正确显示(估计大约90%的网页在网上至少有些格式错误)。
因此,HTML5正在尝试发现并编纂此错误处理,以便浏览器开发人员可以全部标准化并大大减少一致地显示内容所需的时间和金钱。同样,在HTML作为文档格式死亡之后的很长一段时间内,历史学家可能仍然希望阅读我们的文档,并且具有完全定义的解析算法将极大地有助于此。
HTML5的第二个目标是通过HTML,CSS和Javascript开发浏览器成为应用程序平台的能力。许多元素已直接添加到当前(在HTML4中)Flash或基于JS的黑客语言中,例如<canvas>
,<video>
和<audio>
。有用的东西,例如本地存储(一个js可访问的浏览器内置键值数据库,用于存储cookie可以容纳的信息),新的输入类型,例如浏览器可以公开简单用户界面的日期(这样我们就可以了不必使用我们基于js的日历日期选择器),浏览器支持的表单验证将使开发人员更容易开发Web应用程序,并使用户更加快速(因为很多东西将在本地支持,而不是通过javascript入侵)。
在HTML5中还有许多其他较小的工作,例如现有元素的更好定义的语义角色(<strong>
和<em>
现在实际上意味着不同的东西,甚至<b>
和<i>
具有模糊的语义,在解析遗留文档时应该很好)并且添加具有有用语义的新元素 - <article>
,<section>
,<header>
,<aside>
和<nav>
应该取代网页上使用的大多数<div>
s,使您的页面更具语义性,但更重要的是,更易于阅读。没有更痛苦的扫描,看看随机</div>
正在关闭什么 - 相反,你将有一个明显的</header>
,或</article>
,使您的文档结构更直观。
来自Wikipedia:
您需要检查HTML5 Differences from HTML4: W3C Working Group Note 9 December 2014的完整差异。有许多新元素和元素属性。删除了一些元素,其他元素具有与以前不同的语义值。
还定义了API,例如使用canvas,以帮助构建下一代Web应用程序并确保实现标准化。
HTML5引入了许多有助于创建Web应用程序的API。这些可以与为应用程序引入的新元素一起使用:
contenteditable
属性。draggable
属性相结合。您可能对HTML5 elements and attributes的这个列表感兴趣。
此外,请注意它是“HTML 4”,而不是“HTML4”。实际上,对于HTML 5,使用了两种变体,但在含义上存在重要差异。 HTML 5指的是W3C规范的名称,而“HTML5”是那些具有遵循此规范的text/html
MIME类型的HTML文件的文档类型。 XHTML 5与XHTML5相同。
现在W3c在他们的网站上提供了官方差异:
HTML 5邀请您为代码添加大量语义值。更重要的是,有本机解决方案来嵌入多媒体内容。
其余的很重要,但它更加技术化,可以帮助您避免使用客户端编程语言做同样的事情。
简而言之,与html相比,它非常简单,删除了长文档类型,并删除了中心和字体标记。我也在我的博客中回答了这个差异:http://ravisinghblog.in/key-difference-between-html-and-html-5/