浏览器不支持HTML5

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

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

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

 <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>

最后在css里面加上这段:

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

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

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

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

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

上一篇:ios8来了,屏幕更大,准备好使用 iOS Auto Layout了吗?


下一篇:iOS 8 Auto Layout界面自动布局系列5-自身内容尺寸约束、修改约束、布局动画