html5 在IE6/IE7/IE8中使用html5标签

html5在IE6/IE7/IE8中使用html5标签

html5出来后多了很多标签,但是IE6/IE7/IE8并不支持html5,这让我们开发html5网站的很郁闷。现在就介绍下如何在IE6/IE7/IE8中使用html5标签。

原理就是在css中,将新标签的样式变成块状元素,然后在script中创建新标签。直接放出代码,如果您是IE6/IE7/IE8用户,可运行代码试试:

<!doctype html><head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>在IE6/IE7/IE8中使用html5标签</title>
<!--试试去掉以下方法,运行代码看看-->
<!--方法一-->
<!--
<!–[if lt IE9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]–>
-->
<!--方法二-->
<style type="text/css">
article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block;}
</style>
<script>
(function() {
     if (!
     /*@cc_on!@*/
     0) return;
     var e = "abbr, article, aside, audio, canvas, datalist, details, dialog, eventsource, figure, footer, header, hgroup, mark, menu, meter, nav, output, progress, section, time, video".split(', ');
     var i= e.length;
     while (i--){
         document.createElement(e[i]);
     }
})()
</script>
</head>
<body>
<header>宅到底</header>
<nav>菜单1</nav>
<div>菜单2</div>
</body>

在IE6/IE7/IE8下,header和nav不被识别,所以“宅到底”和“菜单1”会在同一行输出。加上以上方法后,header和nav会被当成是div,所以会分两行输出。

相关推荐