使HTML5头部与IE兼容 - HTML5 Shiv无法修复我的布局

4

我前几天发布了一个有关IE中我的布局问题的帖子。

今天我发现了我的问题,IE不能处理我的HTML5元素,如<header><footer>

当我用<div>替换它们时,几乎所有的问题都消失了。所以我开始寻找如何为这些HTML5特性添加IE支持。

我遇到了ModernizrHTML5 Shiv,根据我所读的内容,添加对<header>之类的支持的基本JavaScript是这样的...

document.createElement("header");

现在你可以看到我已经做好了研究,但仍然没能成功。Modernizr没有起作用,所以我尝试了HTML Shiv技巧,但还是没有成功,接着尝试了JavaScript技巧,但也没有成功。

请问有谁能告诉我该怎么办?

我的IE版本是8,很抱歉我没有网站的实时版本可供展示。


1
如果您提到问题是什么,那会很有帮助... - PeeHaa
2
你能发布一下你的源代码吗?我猜你的问题是:“我做了一个HTML5布局,但在IE上无法工作,为什么?” - rroche
@Wojciech Bednarski,你为什么这样认为? - PeeHaa
因为每次 ajax 调用后,您都必须重新在 DOM 中注册这些元素。我看不出其他原因导致它对您无效。 - Wojciech Bednarski
1
啊,等等,你知道这些元素在IE下默认具有“display:inline”吗?尝试将其更改为“display:block”。如果您能提供一些代码,那将非常有帮助。 - Wojciech Bednarski
显示剩余2条评论
1个回答

2

这些脚本可以让新元素在IE中正常工作,但它们的显示样式仍然缺失。 请添加以下CSS,我从html5boilerplate.com复制粘贴:

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接