如何在IE 7中使用HTML5?

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还为时过早,或者如何让它跨浏览器工作?

alt*_*alt 12

这个(真正的)令人难以置信的Javascript应该满足您的HTML5兼容性需求:

http://www.modernizr.com/


Dia*_*ana 6

使用HTML5之前需要考虑两件重要事项;

  1. 目标受众(使用浏览器选择)
  2. 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


Jas*_*aro 5

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标记样式,但无论如何你都需要.