垂直菜单使用:IE中的悬停中断

时间:2009-07-31 22:49:06

标签: css menu hover css-float cross-browser

http://www.thelisthq.net/datetest.php

如果你在firefox,chrome或者8兼容模式下查看页面,垂直菜单工作正常。我的策略是将整个菜单向右浮动并反转子弹(右侧的子弹)。 如果你在早期版本中查看它,即它会中断。我想不出如何解决这个问题,我尝试了不同的doctypes,以及许多小调整,但似乎无法让它正常工作。任何人都知道修复,或有任何见解?

2 个答案:

答案 0 :(得分:1)

我用这个CSS修复了它。您可能需要在#sidenav ul上应用clearfix

#sidenav ul{
    /* removed: float:right; */
    padding:0;
    white-space:nowrap;
    /* removed: direction:rtl; */
}
#sidenav li{
    font-size: 16px;
    font-family:"Times New Roman", Times, serif;
    list-style-type:none;
    width:220px;
    background: #2a3940;
    color: #FFF;
    padding-top: 3px;
    padding-bottom: 3px;
    margin-bottom: 15px;
    text-align:center;
    /* removed: direction: ltr; */
    /* added: */
    float: right;
}

答案 1 :(得分:0)

很抱歉没有查看您的代码,但我很快就尝试根据我在网页上看到的内容推出自己的代码。

适用于IE6,IE7,Firefox(没有Chrome测试)

注意:Ken的答案可能就是您的解决方案。

#menu {
    width: 200px;
}
#menu ul {
    list-style: none; 
    padding: 0;
    margin: 0;
    overflow: hidden;
 }
 #menu ul li {
    margin: 5px 0;
    float: right;
}
#menu ul li a {
    display: block;
    background: #000;
    color: #fff;
    text-decoration: none;
    padding: 4px;
    width: 150px;
    text-align: center;
}
#menu ul li a:hover { width: 200px; }

并加价:

<div id="menu">
    <ul>
        <li><a href="#">Menu Item</a></li>
        <li><a href="#">Menu Item</a></li>
        <li><a href="#">Menu Item</a></li>
        <li><a href="#">Menu Item</a></li>
        <li><a href="#">Menu Item</a></li>
    </ul>
</div>