Last week I posted a chart that listed support for CSS3 features in IE9. This post will consider the extent of IE9 support for HTML5 and related technologies.
The chart is divided into two sections. The first covers the new HTML5 markup elements, and the second covers the APIs and other stuff. My personal assessment is that IE9 is doing much better with CSS3 support than it is in HTML5, so don’t expect to be happy with the overall results shown in these charts. And as one commenter on the previous post pointed out, IE9 is still in Beta, so no need to get too distressed about anything not supported.
As usual, let me know in the comments if any of this is incorrect or if anything’s missing. The info for the charts was compiled from this page on MSDN, the super-useful When Can I Use… app, and this layout engine comparison of HTML5 features on Wikipedia.
HTML5 Elements…
Element | IE9 Support | Previous IE Support |
---|---|---|
<section> | None | |
<nav> | None | |
<article> | None | |
<aside> | None | |
<header> | None | |
<hgroup> | None | |
<footer> | None | |
<time> | — | |
<mark> | None | |
<ruby> | 6-8 | |
<figure> | None | |
<figcaption> | None | |
<embed> | — | |
<video> | None | |
<audio> | None | |
<source> | None | |
<canvas> | None | |
<details> | — | |
<summary> | — | |
<command> | — | |
<menu> | — | |
New Form Elements/Attributes* | — | |
Element | IE9 Support | Previous IE Support |
* Evidently, the only new form enhancement supported by IE9 Beta is the autocomplete attribute, supported since IE7.
…and Related Technologies
Below is a list of technologies, APIs and other goodies that may or may not be part of the HTML5 spec, but have been placed under the HTML5 umbrella as “related technologies”. The list doesn’t include every new technology or enhancement, because some of it is still fairly obscure. Everything that IE9 supports is, to the best of my knowledge, listed here. The rest of unsupported technologies are summarized in the final entry in the table.
Technology | IE9 Support | Previous IE Support |
---|---|---|
MathML | None | |
Inline SVG | None | |
contenteditable | 5.5-8 | |
Data URIs | 8 | |
Cross-Document Messaging | 8 | |
application/xhtml+xml | None | |
Selectors API | 8 | |
getElementsByClassName | None | |
application/xhtml+xml | None | |
SVG | None | |
Canvas APIs | None | |
SVG in CSS Backgrounds | None | |
Web Storage | 8 | |
WAI-ARIA | 8 | |
Offline Web Apps | — | |
Drag and Drop | 5-8 | |
Web Workers | — | |
Web Sockets | — | |
Ajax History Traversal | 8 | |
Text Selection API | None | |
pushState() / replaceState() | — | |
Geolocation API | None | |
A Bunch of other stuff… | — | |
Technology | IE9 Support | Previous IE Support |
The purpose of a ‘beta’ is to test features not add new ones with each increment. Though this may happen when problems in the beta are fixed, it should not be expected that new features will be added. It’s a serious concern if something is not in the beta.
Honestly this is a bit pathetic. It’s been what 2 or 3 years since IE8? In that time Chrome has come out and updated major milestones 6 times adding features and support for a huge breadth of standards as well as greatly increasing script performance. In that time the IE team was able to copy the Chrome look, partially support CSS3 and what…. that’s it?
Someone over at M$ needs to pull their head out their bum and see what’s going on. Total lack of market perspective right here is what I’m chalking this down to. If this were not M$ and IE then IE9 would be a total failure as it doesn’t even reach feature parity with it’s competitors.
Actually, I’m amazed that it’s progressed as much as it has.
Let me be clear; I’m not in any way praising IE; the industry as a whole needs to bury it — decisively, irretrievably and imminently. We as development professionals need to have the professional self-respect to tell current and potential clients, “We develop to current Web standards that are supported across various browsers and platforms. To the degree that any particular release of Microsoft Internet Exploder supports the markup, styling and behaviour of any particular site, that’s well and good. However, without monumental additional time and budget resources, no attempt will be made to provide IE support when those resources could instead be used to improve the experience for users of modern browsers.”
I firmly believe that IE hasn’t progressed as far as, say, Chromium, can be laid firmly at the feet of Microsoft’s existing code base. They’re fully experienced with the reality that complete green-field rewrites of existing projects almost never succeed. They’ve got a code base where the list of major Windows modules and subsystems that do not have dependency relationships with IE could be read aloud comfortably in a single breath. That was done initially by design; now, it doesn’t matter how altruistic the intentions of the team are, they have to live with the codebase they have. It’s all legacy code. The developers at Microsoft are (with rare exception) not morons, but living in the sewer while they’re trying to make something that can stand next to the shiny new browsers next door has to be a psychologically toxic exercise. Their baby is blowing up the Web left and right; they know it, and they know they can’t do a damned thing about it without staging a coup d’état, replacing dozens of levels of management and senior executives and fundamentally changing the culture of the organisation. Don’t hold your breath waiting for that to happen.
That isn’t sour grapes or a diss against the IE developers; it’s simple reality. Microsoft do some amazing things — just not so much for (or on) Windows. Unfortunately for all of us, Windows and Office for Windows are the herds of cash cows for Microsoft, and anything that could be seen as even potentially disrupting that would get shot down faster than you can say S-E-C; the investors would never stand for it. And, with the system the way it is, they’d be perfectly right to. Innovation isn’t as important to the bean-counters as “maintaining and enhancing shareholder value,” and MSFT have had enough problems with that lately. Doing anything “risky” is simply politically (and legally, really) impossible.
So, no matter how many times the IE team jump up and down and say “look at all our neat new features,” without mentioning the standard features left unimplemented because they pulled off numerous miracles just making what they have work, the response has to be “nothing to see here, folks; move along.” And move along we shall.
“We develop to current Web standards that are supported across various browsers and platforms … no attempt will be made to provide IE support”
To say that in the context of web accessibility standards however, would be like saying wheelchair access should not be supported, because there are advancements in artificial limbs or that old people should just get with the times so that we can ditch cheques and analogue television altogether.
The reasons for encouraging web standardst are justifiable, but to ignore a large portion of users would be to entirely miss the point of one f the core directives for there very existance. That is why HTML5 is backwards compatible and why browsers themselves support deprecated tags.
Finally, at IT person showing wisdom and maturity and refraining from the silly esoteric postulating soapboxes that many live upon. Get a life you elitest wannabes.
IE is built on the Trident rendering engine, where Chrome is on WebKit. From what I’ve seen, Trident is much more complex and harder to upgrade. Short of dumping it and moving over to WebKit, I think they’re doing a pretty good job of bringing the system up to date in small increments. The main problem isn’t the support level of the current browser (IE9), its the legacy systems still out there and how upgrades happened way back in the day.
I would agree that HTML5 support is not as good as its css3, but it is still amazing considering. Also, IE9 *does* support <section>, <nav>, etc semantic tags
Really? Could someone explain to me why there is some confusion on this? To me, support of these tags is 2nd in importance only to the increase in CSS3 support.
My understanding is this. While IE9 doesn’t specifically support some of the elements that hold purely semantic value, the browser does support the notion of anonymous elements. Which basically means, where IE8 would ignore a tag it didn’t recognise, IE9 will assume the developer knows best and will render a standard HTML Element. This would make the HTML5 Elements table pointless for semantic elements, as they are all supported under this banner.
Only elements that provide function or require special rendering need a specific implementation. A very good way of doing it in my view.
Rich
As John rightly points out, they’re generic elements, not anonymous elements.
Rich
Richard, this is a good point. Although, as you mention, IE9 doesn’t specifically offer support for the semantic elements, I’m going to update the chart to indicate partial support.
Interestingly, this page, which has a layout engine support chart, indicates “no” support for the semantic elements in Trident 5.0 (which is the engine IE9 uses); whereas the When can I use… app lists the semantic elements as supported by IE9 (which I didn’t realize until now — although that’s specifically talking about the ability to “style” the elements).
For those who might be interested here is a link to the MSDN HTML and CSS library. http://msdn.microsoft.com/en-us/library/aa737439.aspx
Cheers
Rick
IE Outreach Team
Hey, Rick. Thanks for posting here. Please feel free to correct anything that I’ve noted here in the charts, if necessary. Thank you.
Thank you Louis,
I appreciate the welcome, I work with the IE team to reach out to community and help connect folks to resources and information. I don’t always have the answers but I try my best to find a resource that might. Nice job on the correction to the charts in your follow up post. And yes IE9 is still in beta, but the IE team is taking user feedback & suggestions and that is helping to ensure the final release will be strong. Please let me know if there is anything I can do to help, and let people know that they can visit the Internet Explorer Developer Center on MSDN for advanced troubleshooting and guidance for Developers. http://msdn.microsoft.com/en-us/ie/default.aspx
Cheers,
Rick
IE Outreach Team
that’s a really good news who are working on internet Explorer 9
I took a look at IE9 at the very first beta release and tried to contrast with latest web browsers. It didn’t quite come out competitive. Tried to put that in my blog here http://www.mahbubblog.com/browser/internet-explorer-9-review/
I hope the future will be more complete…
Although I personally think…sorry, believe that IE should not exist at all, this is quite useful. I’ll pass it along to our programmers.
@ CodeMyConcept : totally agree with you. IE should not exist at all. It’s time to stop
good god thats a very good news.. being a blogger designer its really been a hard time with internt explorer… thanks for the info
I think it’s a Dying Struggle for IE, What’s a pitty that there is a high rate people use IE6.
Hey am I missing something here??
IE9 introduces canvas, video and audio. That’s pretty good!
You should be able to use the other tags listed here anyway in a similar way a lot of people is already working with HTML5: using simple workarounds to make the tags work well in IE too.
Am I wrong???
And also.. I’m quite confident the microsoft team will introduce basic support for those tags, at least allowing the parser to recognize and style them.
I always hated IE but this time there’s hope a decent browser will finally come out from Microsoft.
At the time of release, I think IE7/8 are the only disappointing releases to come out of Microsoft. Previous versions of IE have been responsible for a lot of the innovations we take for granted today. Ajax and dHTML to name but two.
I personally prefer WebKit, but credit where credit is due.
Rich
Yes, of course — you can use the HTML5 shiv, but that is a nonstandard way to offer support, and essentially amounts to a hack. So technically, IE does not support those tags in any version.
For the reasons I mention above, you shouldn’t need to use html5shiv with IE9.
Rich
Wow! This is really dissapointing! A real shame.
IE pace of development is not as impressive as Chrome. Chrome is the next big thing to watch for in the advent of the new web technologies.
I may understand that this piece of croppy software called IE9 is still in beta but c’mon guys… new tags like <header> or <nav> not supported yet? They should have come first!
Browsers like chrome/safari/camino/opera really make IE a dino!
IE9. Too little, too late. :-(
Maybe this was mentioned already, but to my understanding tags like <article> and <section> are exactly the same as <div class=”article”> or <div class=”section”> only with more semantic value placed on them. If this is the case then IE9 DOES in fact support them as generic elements. http://msdn.microsoft.com/en-us/ie/ff468705.aspx Or am I wrong?
You’re correct as far as I am aware.
Rich
I like IE10 better. It has built in support for electrolytes.
I like Windows 9 better, and IE11 but none of them are availible yet… neither does IE10
I do not understand it. Too many people working on it, too much time to work on it, and still no support for future key things like geo or web sockets :( The only thing I am interested in future releases is speed of this browsers.
From http://msdn.microsoft.com/en-us/ie/ff468705.aspx
About HTML5
Note It is important to remember that, as of this writing, the HTML5 specification is still in the Working Draft stage. Until it reaches the Candidate Recommendation stage, it could change significantly. For more information, see the latest HTML5 working draft.
————
1. Read the note.
2. Yeah, trident and a relevant integration with windows dificults the IE update =)
3. IE9 is beta :)
Now I won’t be precipitate to talk about IE9 HTML5 supports :D And I’m not a blind-geek-nerd to “love” some browser. :)
I just will be wait and I would like that IE9 supports everything like others soon =)
By the way, FIREBUG ROCKS!!!!!!!!!! LOL!!!!!!!!!!!!!!!!!!!
I agree with the last sentence HAHAHA
What about html5 attributes like the new input types? Is multiple file upload supported?
There are so many new elements and tags in HTML5, I think I need to learn HTML again.
why whats wrong with ie 6
most people us e ie
Seriously?
IE has made web development a pain since IE 5.5. The whole reason we have web standards is to allow developers to write once and have a uniform experience across all browsers. IE hasn’t conformed to standard in practically the last decade. And this results in javascript hacks, css tweaks and what amounts to writing the front end of a web application twice because IE can’t be bothered to do it’s job.
The entire point of a web browser it to display web pages. If those pages are written according to standards that your program doesn’t support. You sir, are doing it wrong.
plz check this one and your problem is clear to all html5 tag in ie8
check this one
Hello..
for banner which tag I have to use…? in logo part I have already use header tag
Thank you
Probably doesn’t matter. Maybe “aside” or just “div”. Tags don’t matter that much, so just use whatever you think is good.
I’m learning about it. Fortunately when you share me. Thank you. Not that it is good to use as IE 5.5 does not.
I9 New test hope it was good quality.
I really don’t like IE and I don’t like checking my design in IE until i complete it. I knew about canvas support in IE9 but i never knew that it is not supported in IE 8
Hope this article helps people. Have a nice day
Hi nice article , but i haven’t use the IE for any work now just use for download other browser. i am just curious is that relay matter if website not work proper on IE , i think no body care about it.
what’s your point on it. :)
have an nice day.