2011-09-06 66 views
0

所以,我正在使用一个网站,使用jQuery nav-scroll plugin;这是一个很好的资源,并且在IE中是功能性的,但它是使用大量的HTML 5标签开发的,我最终创建了样式并完善了相关的CSS。降级jQuery,HTML5重网站

现在,显然,该网站看起来像IE 6 & 7中的一场灾难,因为所有设置为使用HTML5标记的样式都未呈现。我唯一的选择是条件IE样式表吗?有没有更好的办法?

最大的问题是样式不会在较旧的IE版本中呈现,并且一切都因为它而被推到很大程度上。我还要求拨打'sticky jQuery' slide out menu/box两次 - 一次在站点顶部,一次在视图底部。再次忽略样式,允许功能,但渲染可怕(使用CSS3阴影)。

你们会建议什么?有条件的IE样式表是唯一的方法吗?

+0

不要忘记接受你的问题的答案,否则你不可能在将来得到答案。 –

+0

我是你在问题中提到的jQuery演示(它不是插件)的作者。在我的演示中,我使用了Modernizr和Eric Myer的CSS重置。所以丹·肖尔的回答是正确的。 –

回答

4

使用Modernizr可让旧版浏览器(特别是IE)呈现HTML5标记。 Read more about it here

为了引入dosboy的建议,他是正确的。 According to the Modernizr docs,您应该将它们设置为display: block以及使用Modernizr脚本本身。您也可以搭配HTML5 Reset stylesheets以获得最终的HTML5效果。

+0

此外,请确保将新的HTML5元素设置为'display:block;'。有关更多详细信息,请参阅http://grinninggecko.com/displaying-html5-elements-correctly-with-modernizr/。 – ggutenberg

+0

很酷,谢谢你们。我一定要检查'Modernizr' - 你如何看待这种方法?将HTML嵌入HTML 5文章中,并/或用“条件风格”调用它们?坏方法? – Cam77

+0

我绝对不会走这条路,因为它基本上违背了HTML5的全部要点,这是语义标记。 Modernizr可以做你需要它做的一切,使这些元素在IE中可用和风格化。因此,为了IE的缘故,需要用更多'div'来混淆你的标记。 –