2012-06-13 54 views
0

我有一个仅在CSS中使用的菜单(即没有JS),它在所有现代浏览器中都很好用,但在IE7中有一个奇怪的错误。它在IE6中运行得不好,但我们不需要在这里解决。问题如下:IE7中CSS菜单的奇怪的可见性问题

将鼠标悬停在菜单选项选项卡上时,会显示下拉菜单。当您将鼠标移出该选项时,下拉菜单消失 - 仅在IE7中,该选项卡也会消失!获取我的位置就是这个 - 如果您再次将鼠标悬停在其上,或者将鼠标悬停在任何其他选项卡上,该选项卡将重新出现。这怎么可能?!鼠标悬停在另一个元素使原始标签可见agin?令人讨厌的是,它在这个网站的最后一个版本中起作用,并且在新设计中,它被破坏了。我试过比较,并且无法弄清楚它是什么。

下面是当前破版小提琴:http://jsfiddle.net/pXZLJ/1/

这里的老工作的一个之一:http://jsfiddle.net/43utK/

查看这些在IE7中看到的问题。帮帮我?谢谢:)

+0

FYI它是在IE9上工作,更好地问没有缩小的css –

+0

是的,它也在IE8中工作。这个问题似乎只与IE7。对于缩小比较抱歉,我更愿意以这种方式使用CSS,所以我所有的CSS都采用这种格式。 – zenkaty

+0

@zenkaty,你可以改变样式,还是想让它们保持原样但是让它们在IE7中工作?我对这些风格做了一些改动,主要是简化了它们,这些改动在IE7,FF和Chrome中都有效。这些样式应该在IE6/7/8/9中工作(这里是希望的。由于我没有IE8/9,我不能在那里测试它们)。 – sarcastyx

回答

0

尝试删除您的CSS中的这一行:.nrmenu * {position:relative}。它似乎解决了一些问题。

编辑:正如sarcastyx指出的,它确实似乎影响下拉菜单。因此,请将position:relative添加到.nrmenu li,然后再次出现下拉菜单。

+0

当你移除'position:relative;'时会发生一件有趣的事情。没有任何子菜单链接再显示。 – sarcastyx

+0

好点!如上所述修复。 – circey

+0

工作,谢谢!这很奇怪,我发誓,这是我第一次尝试 - 也许我试图刷新并认为它没有工作时被缓存。谢谢:) – zenkaty