With HTML 5, we’ll actually see semantic markup for the structure of Web pages, which mean the structure will have meaning.
This will add many possibilities for the way machines read websites:
- Search engines will have more ways to rank content, based on the structure.
- Screen readers will have more semantic markup with which to help visually impaired people.
- Markup for small-screen devices will become standardized.
Along with new structural elements, HTML 5 also introduces many new tags. Some of the most interesting elements:
audiotag will bring new, semantically meaningful markup to content and allow video and audio to be streamed directly in the browser.
- Forms will get new and improved semantics for text input and form validation.
- The new
canvastag will have a 2-D drawing API.
HTML 5 also contains many new APIs, such as:
- Immediate-mode 2D drawing
- Timed media playback
- Offline storage
- Drag and drop
- “Back” button management
- MIME and protocol handler registration
Work on HTML 5 started in late 2003 and has the following timeline:
- First W3C Working Draft in October 2007
- Last Call Working Draft in October 2009
- Call for contributions for the test suite in 2011
- Candidate Recommendation in 2012
- First draft of test suite in 2012
- Second draft of test suite in 2015
- Final version of test suite in 2019
- Reissued Last Call Working Draft in 2020
- Proposed Recommendation in 2022
This may look ridiculous (2003 to 2022 is 19 years!), but consider the case of HTML 4, DOM2 HTML and XHTML1, the three specifications that HTML 5 is supposed to replace. The HTML 5 team wants to have a test suite with which at least two browsers completely pass before calling it a day. This doesn’t mean that developers can’t start using HTML 5 before 2022, only that the specification may change during this period. HTML 5 will probably be usable by 2012, depending on how fast browser makers implement the features and distribute their browsers to users. Some APIs and tags have even been implemented in today’s browsers.
The semantic structure of HTML 5 will save developers from having to add many divs, but marking up the rest of the content correctly will still be important for having a semantic website. Last but not least, understanding the difference between block-level elements and inline elements and what every tag is for will still be very important.