【问题标题】:Superfish will not display in IE8Superfish 在 IE8 中不显示
【发布时间】:2011-01-29 23:07:29
【问题描述】:

我有一个关于 superfish 的问题,它使得下拉菜单仅在 IE8 中根本不出现。它出现在其他所有东西(甚至是 IE6)中,但不是 IE8。我根本没有修改源 JS,我正在调用一个名为“subnav”的 div,其中显示了我的列表。

应该发生的是,当我将鼠标悬停在菜单项上时,它会将下拉菜单的 CSS 更改为“可见性:可见性,显示:块”并显示菜单。在 IE8 中,什么都没有发生,也没有任何 CSS 改变。

任何想法可能导致它?我还在为 superfish 使用 supersubs 插件。

这是css:

#navbar ul{
    margin:10;
    padding:0;
    width:1000px;
}

#navbar li{  
    float:left;  
    color:#191919;  
    list-style-type:none;
    text-transform:uppercase;
    background:transparent url('../images/common/layout/nav-separator.jpg') center right no-repeat;
    padding:10px 0;
}

#navbar li.last{  
    background:none;
}

#navbar ul li a{
    padding: 12px 33px;  
    color: #fff;  
    text-decoration: none; 
}

#navbar ul li a:hover{
    color:#05af0d;
    background:transparent url(../images/common/layout/nav-hover-highlight.png) top center no-repeat;
}

#navbar ul li a.hover-arrow:after{
    margin-left:10px;
    content:url(../images/common/nav-arrow.png);
}

#navbar ul li:hover a.hover-arrow:after{
    margin-left:10px;
    content:url(../images/common/nav-arrow-roll.png);
}

#navbar ul li a.hover-arrow:hover{
    background:#000 url('../images/common/layout/nav-separator.jpg')  right 9px no-repeat;
}

#navbar ul li p{
    margin:0;
    display:inline-block;
}


/*Sub Nav Lists */
.subnav { 
    display:none;
    visibility:hidden; 
}

#navbar ul li ul{
    margin:0; padding:0;    
    position: absolute;   
    left: auto; top: 40px;  
    background: #333;  
    z-index: 99;
}

#navbar ul li ul li{
    background:none;
}

#navbar ul li ul li a{
    padding:0px 3px;  
    display:inline-block;
    margin:0;
    width:150px;
    text-transform:capitalize;
}

#navbar ul li ul li a:hover{
    background-color:#a7a7a7;
    color:#000;
    border:none;
    background-image:none;
    font-weight:bold;
}

这是它在页面上的运行方式:

<div id="navbar">       
   <ul class="topnav">
      <li id="item 1"><p></p>
         <ul class="subnav"></subnav>
      </li>
      <li id="item 2"><p></p>
         <ul class="subnav"></subnav>
      </li>
      etc...
   </ul>
</div>

【问题讨论】:

  • 你能发布你的css吗?
  • 我刚刚发布了 css :)

标签: javascript jquery internet-explorer-8 superfish


【解决方案1】:

不确定这是否会解决您看到的问题,但我在您的 html sn-p 中注意到带有 subnav 类的 UL 元素没有用适当的标签关闭。我会尝试的第一件事是将它们替换为:

&lt;ul class="subnav"&gt;&lt;/ul&gt;

IE8 可能不会像其他浏览器那样优雅地处理任何其他错误。尝试通过验证器运行您的页面(即:The W3C Markup Validator

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-12-17
    • 1970-01-01
    • 2012-12-16
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多