Css IE样式问题 - 如何在IE中更正这个简单的导航菜单?

时间:2012-05-06 20:10:59

标签: css

我正在处理一个小型网站导航问题,并且内容在chrome,firefox和safari中运行良好 - 但当然,IE根本无法设置导航菜单的样式。

我创建了一个无序列表,并在其上修剪了样式,使菜单水平。

以下是该问题的直接链接:(已删除链接)。

无序列表显示为IE中的项目符号无序垂直html列表,而不是Chrome中漂亮的导航菜单。

有什么建议吗?

3 个答案:

答案 0 :(得分:1)

您使用的是<nav> HTML5元素。旧的IE版本(8及更低版本)无法识别它们,也不会对它们进行样式化。

要解决此问题,您需要使用HTML5shiv。按照该页面上的说明进行操作 简而言之,HTML5shiv使用document.createElement创建每个HTML元素,如果你这样做,IE会识别它们。要获得完整的故事:Paul Irish: The history of the HTML5 shiv

答案 1 :(得分:1)

除了nav问题(在旧版IE上阻止所有样式),似乎还存在其他问题。

HTML代码使用旧版IE无法识别的media属性,这意味着它们不应用任何CSS文件。快速解决方法是从引用Large.css的media元素中删除link属性。更好的解决方法是将大多数CSS规则收集到您使用link元素media=screen(或没有media属性)引用的文件中,以便依赖于媒体宽度的CSS文件仅包含您希望针对不同宽度不同的设置。

IE 9控制台包含CSS3114错误消息,指出@font-face未通过OpenType嵌入的使用权限检查。

Medium.css和Small.css包含float: center这是不正确的(center不是float的可接受值)。使用http://jigsaw.w3.org/css-validator/检查您的CSS代码。

答案 2 :(得分:0)

nav代码替换为div代码。看来这里不需要对CSS代码进行任何更改,因为您使用#nav来引用该元素,如果您将<nav id="nav">更改为<div id="nav">(和</nav>,则该工作正常到</div>当然。)