我一直盯着我的代码几个小时,似乎无法弄清楚为什么我的下拉悬停菜单根本没有显示在IE 7中。当我悬停在菜单上,下拉菜单根本不显示。它在firefox,chrome,safari和IE 8中工作正常。我基本上认为自己知道我所知道的一切,所以我是一个新手。我搜索了四周,并阅读了一些关于添加一些JavaScript,但似乎并没有工作...除非我可能忽略某些错误或错过的东西,但任何帮助将不胜感激....漂亮请:)并提前致谢!CSS下拉菜单悬停不显示在IE 7
这里的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>
'#navmenu ul li:hover ul,#navmenu ul li.sfhover:'那末尾的冒号应该在那里吗?你也可以创建一个jsFiddle –