By Louis Lazarison September 28th, 2010 | 45 Comments
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
None
None
None
None
None
None
None
—
None
6-8
None
None
—
None
None
None
None
—
—
—
—
New Form Elements/Attributes*
—
Element
IE9 Support
Previous IE Support
* Evidently, the only new form enhancement supported by IE9 Beta is the autocompleteattribute, supported since IE7.
UPDATE: Thanks to comments from Richard Kimber and John, I’ve updated the chart to include a yellow checkmark for the semantic elements that are normally hacked into recognition using the HTML5 Shiv script. As they mentioned, generic elements are now supported in IE9, so you can safely style the new semantic elements. Does this mean that strictly speaking, the elements are supported? According to the layout engine comparison mentioned earlier, Trident 5.0 (the engine that runs IE9) does not support those elements. So, I’m not really sure what to think. But I guess the good news is, the elements are styleable, which is really all we’re looking for, along with DOM recognition (which I assume is also working as expected).
UPDATE (Oct. 30/2010): According to the release notes for the Platform Preview for IE9, Platform Preview 6 has added default styling for many of the new HTML5 semantic elements. This has not yet been added to IE9 Beta, so I’ll leave the checkmarks yellow for now, but it is a good sign, and likely means that IE9 will have full support for those elements.
UPDATE (March 15/2011): IE9 is now officially released, and the IE9 Developer Guide now has some updates, which I’ve included in this chart, so some of the notes above no longer apply.
…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