The next iteration of HTML has been met with excitement by some, loathing by others and confusion/fear by everyone else. Love it or hate it, HTML 5 will soon define how you build websites. This is the first article in a four part series that will introduce HTML5 and its basic features as well as explain the key differences from HTML4.01 and XHTML 1.0 so you can start preparing yourself and your sites for the transition. Over the next week we’ll be focusing on three major areas:
1. New Elements 2. Semantic Changes 3. Getting it Working Today
This article will briefly introduce each of these topics to prepare you for the in-depth articles ahead.
Before we dive into the topics listed above, I want to take a minute to look at an extremely important feature that we won’t be covering in its own dedicated article: the new APIs. HTML5 includes several new APIs that are integrated with some of the new HTML5 elements (which we’ll be looking at later). Here’s the complete list straight from W3.org:
2D drawing API which can be used with the new canvas element.
API for playing of video and audio which can be used with the new video and audio elements.
An API that enables offline Web applications.
An API that allows a Web application to register itself for certain protocols or media types.
Editing API in combination with a new global contenteditable attribute.
Drag & drop API in combination with a draggable attribute.
API that exposes the history and allows pages to add to it to prevent breaking the back button.
As you can see, the principal purpose of these APIs is to facilitate web application creation. Notice the third API enables offline web apps. This is excellent news for users and programmers alike because it enables the use of rich, internet-driven applications in an offline environment. You can expect to see many of your favorite applications follow Gmail in introducing offline access.
New Elements in HTML5
HTML5 introduces quite a few new elements. Article two in this series will look at a few of these in detail, but for now here’s the complete list with brief descriptions (source: w3schools):
Defines external content
Defines some content aside from the article it is placed in
Defines sound, such as music or other audio streams
Defines graphic, such as graphs or other images
Defines a command button, like a radiobutton, a checkbox, or a button
Defines a list of selectable data. The datagrid is displayed as a tree-list
Defines a list of selectable data. Use this element together with the input element, to make a dropdown list for the input’s value
Defines a container for data template. This element must have child elements to define a template: elements
Defines details of an element, which the user can see, and click to hide
Defines a dialog, such as a conversation
Defines embedded content, such as a plug-in
Defines a source for events sent by a server
Used to group some elements
Defines the footer of a section or document. Typically contains the name of the author, the date the document was written and/or contact information
Defines the header of a section or document
Defines marked text. Use the tag if you want to highlight parts of your text
Defines a measurement. Used only for measurements with a known minimum and maximum value
Defines a section of navigation links
Defines a nestingpoint in a datatemplate for child elements. Used together with the elements and
Defines different types of output, such as output written by a script
Defines the rules for updating a datatemplate. Used together with the elements and
Defines sections in a document. Such as chapters, headers, footers, or any other sections of the document
Defines media resources for media elements, such as
Defines a time or a date, or both
Defines video, such as a movie clip or other video streams
Though we won’t have time to go over each of these in detail, we’ll be examining a few of the important ones such as
This is the part that should fundamentally change the way you structure your sites. Included in the list above are six new structural elements that will help bring consistency to the basic frame of sites all across the web. These six elements are:
Think of these as the replacement for many of the DIVs that you currently use to structure your site. So instead of “
,” you’ll simply have “ .” Notice I included “div class” instead of “div id.” This is because these elements are repeatable throughout a page in the same way that classes are. We’ll investigate this more later this week in article three.
Getting HTML5 Working Today
Don’t get too excited by this headline. As any good web developer knows, all the major web browsers still differ (some are worse than others, you know who I’m talking about) on support for HTML4.01 and XHTML 1.0. Now imagine what that means for a change as big and new as HTML5. Though mega-developers like Google are pushing along the acceptance of HTML5, it won’t be supported across the board for some time. However, that doesn’t meant that you shouldn’t begin preparing for the big switch today, and it certainly doesn’t mean there aren’t clever tricks out there to enable you to start playing with HTML5 right away. In article four, we’ll take a look at how you can start your HTML5 journey sooner rather than later.
This article briefly introduced the new elements and APIs included in HTML5. We talked about how you should be excited for the changes HTML5 will bring to the web apps of tomorrow. We also got a taste of the semantic changes to come and the new structure our web pages should take in the future. Finally, we learned that even though HTML5 isn’t quite ready for the masses, we can still get our grubby developer fingers on it and start experimenting today. Check back here frequently in the next week for an in-depth look into each of these topics!
Become a Member
Join our 15,000+ members to submit your designs, collect inspiration, and receive our weekly newsletter.
Get unlimited access to Skillshare with a 3 month trial – only $0.99!