Drop down menu CSS下拉菜单悬停不显示在IE 7中

Drop down menu CSS下拉菜单悬停不显示在IE 7中,drop-down-menu,internet-explorer-7,hover,Drop Down Menu,Internet Explorer 7,Hover,我盯着我的代码看了好几个小时,似乎不明白为什么我的下拉悬停菜单在IE7中根本没有出现。当我悬停菜单时,下拉菜单根本不显示。它在firefox、chrome、safari和IE8中运行良好。我基本上认为我自己知道的一切,所以我是一个完全的新手。我四处搜索并阅读了一些关于添加一些javascript的内容,但这似乎不起作用…除非我可能忽略了某些错误或遗漏了某些内容-但如果有任何帮助,我将不胜感激…非常感谢(0:)并提前感谢 以下是CSS: #navmenu { height:50px; positi

我盯着我的代码看了好几个小时,似乎不明白为什么我的下拉悬停菜单在IE7中根本没有出现。当我悬停菜单时,下拉菜单根本不显示。它在firefox、chrome、safari和IE8中运行良好。我基本上认为我自己知道的一切,所以我是一个完全的新手。我四处搜索并阅读了一些关于添加一些javascript的内容,但这似乎不起作用…除非我可能忽略了某些错误或遗漏了某些内容-但如果有任何帮助,我将不胜感激…非常感谢(0:)并提前感谢

以下是CSS:

#navmenu {
height:50px;
position:relative;
width:950px;
z-index:1;
top:-142px;
margin:0;}

#navmenu ul {
margin:0;
padding:0;
line-height:50px;
position:relative;
float:left;}

#navmenu li {
margin: 0;
padding: 0;
list-style: none;
float: left;
position: relative;}

#navmenu ul li a {
height:50px;
width:auto;
    display:block;
padding:0 20px 0 21px;}

#navmenu ul ul {
position:absolute;
visibility:hidden;
top:50px;
z-index:1;}

 #navmenu ul li:hover ul, #navmenu ul li.sfhover: {
visibility:visible;
z-index:9999; 
display:block;}
对于我发现的javascript,我把它放在了头上:

<script type="text/javascript">
sfHover = function() {
var sfEls = document.getElementById("navmenu").getElementsByTagName("LI");
for (var i=0; i<sfEls.length; i++) {
    sfEls[i].onmouseover=function() {
        this.className+=" sfhover";
    }
    sfEls[i].onmouseout=function() {
        this.className=this.className.replace(new RegExp(" sfhover\\b"),     "");
    }
}
}
    if (window.attachEvent) window.attachEvent("onload", sfHover);
    </script>

sfHover=函数(){
var sfEls=document.getElementById(“navmenu”).getElementsByTagName(“LI”);

对于(var i=0;i您可以尝试添加“缩放:1”到你的ul元素。这主要是修复IE中类似的问题。

你可以做的是创建一个没有JavaScript的纯CSS菜单。参见本教程:希望对你有用。谢谢!但我相信我当前的菜单已经是纯CSS菜单,我只添加了JavaScript来修复IE 7错误,希望能解决这个问题……但事实并非如此仍然很困惑…:/nevermind!我设法找到了问题…是一些渐变背景色代码与下拉菜单冲突…奇怪。
\navmenu ul li:hover ul,#navmenu ul li.sfhover:
尾随冒号应该在那里吗?您还可以创建一个jsFiddle吗