你的位置:首页 > 网页设计

[网页设计]浏览器不支持HTML5


有些浏览器并不支持HTML5中的新增元素,如IE8或更早版本。想要应用样式,可以头部标记<head>中加入下面JavaScript代码
 1 <html> 2 <head> 3 <meta charset=uft-8"/> 4 <style>  5 header{  6   color: red; 7   width: 500px;  8 } 9 </style>10 <script>document.createElement("header")</script>11 </head>12 <body>13 <header>Hello world!</header>14 </body>15 </html>

对重点就是document.createElement。考虑各个浏览器兼容性不同,可以对上面JS代码进行优化,即使用条件语句包含JS代码

 

IE9以下版本的IE将创建HTML5标签, 非IE浏览器会忽略这段代码,因此不会发生http请求,也就不影响网页执行效率。

 1 <script> 2 (function() { 3 if (! 4 /*@cc_on!@*/ 5 0) return; 6 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(', '); 7 var i= e.length; 8 while (i--){ 9 document.createElement(e[i])10 }11 })()12 </script>

最后在css里面加上这段:

/*html5*/ article,aside,dialog,footer,header,section,footer,nav,figure,menu{display:block}
主要是让这些html5标签成块状,像div那样。

 

另外还有种能让IE识别那些新元素的途径就是使用HTML5 shiv,html5shiv的使用非常的简单,在你的网页中引入Google的html5shiv包(已经写好的直接可调用)在页面head中即可

1 <script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>

一定要加在<head></head>里调用 (因为浏览器必须先解释了这个脚本才能解析后面的html5标签,所以不能放在页面底部)

下载地址: http://html5shiv.googlecode.com/svn/trunk/html5.js