php*_*ini 10 html css html5 internet-explorer-7
我想知道是否有办法在Internet Explorer 7或更低版本中显示html5代码.
例如
<div id="container">
<header id="header">
something
</header>
</div>
Run Code Online (Sandbox Code Playgroud)
在Internet Explorer 7中,标题根本不显示.
我在这里找到了一个解决方法,一个IE HTML5启用脚本,它使用javascript创建html5元素.但是,<header>标签看起来并不像其他浏览器那样.
所以我的问题是,现在使用HTML5还为时过早,或者如何让它跨浏览器工作?
使用HTML5之前需要考虑两件重要事项;
- 目标受众(使用浏览器选择)
- HTML5您网站上的有用功能.
如果您确定很多用户都在使用IE8及以下版本,那么您应该完全避免使用HTML5.
因此,当您说"现在使用HTML5还为时尚早"时,答案取决于您的用户群.IE仅对版本9及更高版本的HTML5提供了很好的支持.
你没有办法让HTML5高级功能在IE7/8上运行...你提到的html5.js只是让你的CSS"不要忽略"任何HTML5元素并应用样式..它什么都不做比那更..
对于所有主要的浏览器支持和分数,您可以查看html5test.com
除此之外,您还可以在http://itunes.apple.com/in/app/designmobileweb/id486198804?mt=8上查看关于HTML5的非常好的解释教程,名为DesignMobileWeb.
请记住,如果您要使用基本站点,则应避免使用HTML5.只有在计划为移动设备使用本地存储,离线访问和HTML5表单等时,才应考虑使用HTML5
IE <9无法识别HTML5元素,也不会生成它们.所以我用这个JS来做代:
var e = ("abbr,article,aside,audio,canvas,datalist,details,
figure,footer,header,hgroup,mark,menu,meter,nav,output,
progress,section,time,video,figcaption,summary").split(',');
for (var i = 0; i < e.length; i++){
document.createElement(e[i]);
}
Run Code Online (Sandbox Code Playgroud)
我使用这个条件注释来检查是否需要运行脚本
<!--[if lt IE 9]>
<script src="js/html5_createElement_for_IE.js"></script>
<![endif]-->
Run Code Online (Sandbox Code Playgroud)
当然,你需要为IE <9标记样式,但无论如何你都需要.