HTML5 is developed keeping in mind the usage of modern websites. New tags have been added: ‘header’ for headings; ‘nav’ for website navigation block; ‘footer’ for bottom lines in web page; ‘section’, ‘article’ or ‘aside’ for particular sections such as blogs, etc.
HTML4 supports what is called ‘tag soup’, this is, the ability to write malformed code and have it corrected into a valid document. But the problem is that rules for doing this aren’t written anywhere, so developers just have to test malformed documents in various browsers (especially Internet Explorer) to handle any errors. Also, HTML4 lacks rules for parsing, which makes it more difficult to handle errors.
HTML5 is attempting to solve this, so that browser developers can standardize and save time and money. It is also more flexible to handle inaccurate syntax, and it specifies the rules related to the parsing and lexing.
HTML4 is the markup language used for writing websites worldwide, and it is supported by all web browsers.
HTML5 is not yet an official standard, all major browsers (Safari, Chrome, Firefox, Opera, Internet Explorer) support most of its features.
HTML4 needed external software, like Flash, to play videos and multimedia content. This sometimes caused problems due to incompatibility, etc.
HTML5 can embed video on web-pages without using any special software. It is also said to be capable of playing video games (8-bit) on the browser itself.
HTML5 introduces a number of APIs (application programming interfaces) that help in creating Web applications, like:
Drag and drop
Offline database storage
Canvas 2D, that makes it easier to integrate video elements.