Making IE recognize HTML5 elements

IE6, IE7 and IE8 don’t recognize the HTML elements. This causes a major problem when you’re using the HTML5 elements, such as ‘aside’, as part of (or your complete) selector in your CSS. Add this snippet either in your HTML or as a condionally included file, and IE will be able to handle your HTML5 elements as selectors in your CSS, and as members of your DOM in javascript. (thanks to John Resig for the inspiration)

<!--[if IE]>
<script type="text/javascript">
var html5elmeents = "address|article|aside|audio|canvas|command|datalist|details|dialog|figure|figcaption|footer|header|hgroup|keygen|mark|meter|menu|nav|progress|ruby|section|time|video".split('|');
for(var i = 0; i < html5elmeents.length; i++){

Printing HTML5 in Internet Explorer: where HTML5 is not supported

The code snipped above does wonders for enabling the various Internet Explorer’s to understand HTML5 elements as element selectors for scressn media, it does nothing to enable print CSS. The above javascript doesn’t cure the ‘print’ issue. Jonathan Neal has come up with a javascript solution to the IE HTML5 print issue.

IE Print Protector is a javascript file that allows you to print HTML5 pages in Internet Explorer, helping IE render HTML5 elements correctly, both on screen and in print.

Published by

Estelle Weyl

My name is Estelle Weyl. I am a consulting web developer, am writing some books with O'Reilly, run frontend workshop,s and speak about web development, performance, and other fun stuff all over the world. If you have any recommendations on topics for me to hit, please let me know via comments. If you want

7 thoughts on “Making IE recognize HTML5 elements”

  1. If wordpress eats the code, and it’s not working for you, please do a view source and copy and paste. That script is in the header section of this page.

  2. Mathias –

    Thanks for the link. Very similar function, though our list is slightly different

    /*@cc_on’abbr article aside audio canvas details figcaption figure footer header hgroup mark menu meter nav output progress section summary time video’.replace(/\w+/g,function(n){document.createElement(n)})@*/

    any clue on what @cc_on does?

  3. I post this comment here because I can’t post in the overview.
    You write that IE doesn’t support Postmessage. It is not true. IE8 support postmessage on IFrames with application of the same origin domain.

Comments are closed.