<li> <IE>下宽度不是100%</ul> </li>

时间:2011-12-21 03:18:08

标签: html css internet-explorer-7

我再次遇到IE问题。我有一个下拉菜单,其中<LI>项垂直落在它下面,上面的<UL>有背景颜色。 <LI>有一个悬停的背景颜色,所以我绝对需要它来填充整个宽度,但只在IE上它不起作用。

我正在处理的样本是here。将鼠标放在“资源”菜单项上。它适用于FF但不适用于IE(duh)。

#menu {
    margin:0px auto;
    padding:0px;
    width: auto;
    display: block;
    list-style:none;
    white-space: nowrap;
    position: relative;
}

#menu li {
    display:inline;
    margin-left:40px;
    margin-right:0px;
    margin-top:10px;
    margin-bottom:0px;
    padding:0px 0px 0px 0px;
    list-style:none;
    position: relative !important;

}

#menu li a:link, #menu li a:visited {
    color:#fff;
    text-decoration:none;
    font-size:12px;
    padding-bottom: 3px;
    text-transform: uppercase;
}

#menu li a:hover {
    color:#ddd;
}

#menu li a:active {
    position:relative;
    top:1px;
    color:#fff;
}

.submenu {
    position:absolute;
    left: -9999px;
    display: block;
    background-color:#906117;
    padding:0px 0px 0px 0px;
    margin: 0px;
    top:15px;
    z-index: 20;
}

#menu li:hover .submenu {
    left: -5px;
}

.submenu li {
    text-align: left !important;
    margin:0px !important;
    padding: 3px 0px 5px 0px !important;
    float: left;
    display: block;
    width: 100%;
    position:relative;
    border: 1px solid #333;
}

.submenu li:hover {
    background-color: #f79c10;
}

.submenu li a:link, .submenu li a:visited {
    color:#fff !important;
    font-size:12px !important;
    padding: 0px !important;
    margin: 0px !important;
    white-space:nowrap;
    display: block;
    padding:3px 7px 5px 7px !important;
    min-width: auto;
    zoom: normal;

}

.submenu li a:hover, .submenu li a:active {
    color:#fff !important;
}

3 个答案:

答案 0 :(得分:3)

CSS:

#menu .submenu li {
    display: block;
    width: auto;
    float: none;
}

答案 1 :(得分:2)

float:left使用LI,并将所有其他样式移至A标记。将display:block添加到您的A代码。

请记住在菜单后清除你的花车。

答案 2 :(得分:0)

显示内联通常不会扩展到整个宽度。尝试将其设置为

display:inline-block