Easy-to-follow video tutorials help you learn software, creative, and business skills.Become a member
In the last 10 years of web development, I can't think of anything that has generated more hype, confusion and frenzied discussion than HTML5. In fact, there's so much conflicting information out there, it's hard to understand what's really part of HTML5 and what's not. For example, I can't tell you how many times I've heard people refer to CSS3, Geolocation, SVG, and WebGL as part of HTML5. In fact, each of these is contained in their own separate specification. Yes, they are related technologies.
They'll often be combined together. But defining them as belonging to HTML5 is essentially making HTML5 a framework, not an individual specification. Personally, I feel this is harmful. Take the W3C's own HTML5 logo page, for example. In a desire to raise awareness in adoption of HTML5, they created a branding page for it. You can download logos, create banners, and even buy a T-shirt. You know, thanks to Michael Ninness, I actually have one of these. Truth be told, there's nothing even remotely wrong with this.
I think it's a great way to increase awareness of HTML5, but let me scroll up here. Notice that in the Technology section, they even list CSS3 and Web Workers as being part of HTML5 itself. I mean HTML5 is even referred to here as a framework. Now, based on things like this, I can't blame designers for being a little confused about what HTML5 actually is. So, how can you find out what really is included as part of HTML5? Now, the best place to go is to the actual specifications themselves. Yes, that's right.
I said specifications. You see, because HTML5 was first developed by the WHATWG and then adopted by the W3C, the specification is hosted, developed, and maintained by both organizations. I know that this, too, probably sounds confusing. So the best thing to do is to just jump in and explain it along the way. If you're brand-new to HTML5, I recommend starting here, the HTML5 differences from HTML 4. As you can see, this is hosted by the W3C. Now, this document gives a brief introduction to HTML5 and the philosophies that guide it.
We have HTML5 syntax, language and the new and changed elements and attributes from HTML 4 to HTML5. It's a great way to get up to speed quickly. Staying within the W3C, you can find the HTML5 specification here at dev.w3.org/html5/spec/spec.html. Now, almost all of the HTML5 specifications are available as single-page or multipage documents. Now, I'm going to be honest with you here.
Unless you enjoy seeing your browser crash a good bit, I recommend using the multipage versions of the specifications. As you can see by looking at the table of contents, the specification is separated into different sections that concentrate on things like the structure, semantics, and syntax of HTML, its elements, user interaction. But you're also going to find some things like loading web pages and rendering that, if you're familiar with the HTML 4 specifications, they're going to be a little odd. Well, that's because the HTML5 specification covers both authoring and rendering requirements.
Now, this level of detail which specifies how the code should be parsed and how errors should be handled is great for interoperability, but it can make it a little difficult for authors to find exactly what they're looking for. Now thankfully, the W3C also provides us with both a markup language reference guide and an HTML5 Edition for Web Authors. Now the language reference, which is available here at http://dev.w3.org/html5/markup, does a nice job of giving us a really concise guide to the HTML syntax and some of the elements in HTML5 as well.
Now, the HTML5 Edition for Web Authors, which you can find here at http://dev.w3.org/html5/spec-author-view/Overview.html. That is a mouthful, and I'm going to be honest with you. It's easier if you just Google it and bookmark it. That is exactly what I've done with it, because you're not going to remember that. But what this is this is the specification but with all the information for user agent implementations sort of stripped out of it. It's a subset of the main HTML5 specification, and it contains things like HTML syntax, the elements of HTML, web application APIs--all the things that as an author of web content you're going to want to need, but it's going to make things like parsing rules that frankly you don't need to slog through if you're just looking to find out, for example, what attributes are available for a specific tag.
Now, as I mentioned earlier, the WHATWG also hosts its own version of the HTML5 specification. And to find that, you want to go to WHATWG.org, http://www.whatwg.org, and just click on the HTML link, which is right here, front in center, pretty easy to find. Now this one also has a single-page and a multipage version of it. Again, I definitely, strongly advise you to use the multipage version. Why do we need two specifications? The best answer to that question is actually in this spec itself. So I'm going to scroll down a little bit and I want to go down into the Introduction for you.
One of the first questions that it answers is, hey! Is this HTML5? Because you may have noticed the spec didn't say HTML5; it just said HTML. Essentially, the WHATWG defines their specification as HTML with no version number. That's because their philosophy is that the speed at which the web evolves made the cumbersome process of trying to define standards by obsolete really. And to them, the HTML specification is a continuously maintained, living standard. If I scroll down a little bit, you can see that they sort of differentiate their philosophy to the W3C, as you can read right here where it says, "The W3C specification follows a more traditional style, with versioned releases of the specification, and with maturity management being done only at the document level." And that means that their spec has a version number and necessarily is going to go through periods of feature freeze, where new features are not added, so the specification can reach maturity.
Now, that doesn't happen here at the WHATWG; they are just continually adding to it. So, obviously that's going to lead to some differences between the two specifications. So how do you know what those differences are? Well, if I scroll down just a little bit more, you can see that they list them for you, which is really nice. This is a great section to bookmark and come back to. Notice they are listing some of the smaller editorial differences between the specs. And if I scroll down a little bit more, they are going to show you some features that are part of HTML, but at the W3C, have been split into their own specifications. Then finally, down towards the bottom here, they're basically just going to list-- and this is really nice that they have done this for us--features that aren't current in HTML, they're not part of the HTML5 specification, but they've been mentioned so frequently in HTML5 discussions, they're listed here, just so people will kind of know where to find them and go learn more about them.
So as I mentioned before, this is a really nice section to come back to, time and time again, to kind of see how the two specs are evolving and the differences between the two. Now if you are interested in learning more about the related technology that's often associated with HTML5, you can also check out the WHATWG's larger and more encompassing Web Applications 1.0 specification. You can see that here at http://www.whatwg.org/specs/web-apps/ current-work/complete. And you can also go to W3C and browse through all of their standards and drafts, and this can be found at http://www.w3.org/TR.
Now here you can track all the current standards, drafts, and revisions of HTML5 and HTML5-related technology. You can see we have an entire category here for HTML that lists all of those specifications. Take a deep breath. I know it's really easy to get overwhelmed by all of the documents that I've just shown you. I'm betting, some of you are probably feeling like you've just have a huge homework assignment given to you. But just remember, take a little bit at a time. Now, focus on the areas that are important to you, and use the specifications as a living reference as you code.
Now we're going to revisit these specifications as we explore the new elements and semantics in HTML5, and this should help you get comfortable navigating the documents and finding relevant information.
Get unlimited access to all courses for just $25/month.Become a member
61 Video lessons · 93436 Viewers
82 Video lessons · 104356 Viewers
71 Video lessons · 76434 Viewers
56 Video lessons · 107771 Viewers
Access exercise files from a button right under the course name.
Search within course videos and transcripts, and jump right to the results.
Remove icons showing you already watched videos if you want to start over.
Make the video wide, narrow, full-screen, or pop the player out of the page into its own window.
Click on text in the transcript to jump to that spot in the video. As the video plays, the relevant spot in the transcript will be highlighted.