我一直在尝试修复IE 7及更低版本的下拉菜单。我几乎完成了,除了我无法从列表项中删除缩进。我试了很多像padding:0,margin:0,list-style-position:inside,...没有任何运气。
请参阅此屏幕截图:http://imgur.com/qWI0j5z
另外,我有相同版本的IE的另一个问题。当我将鼠标悬停在第一行下方的列表项上时会发生这种情况,该列表项显示另一个列表项正确。如果我没有将鼠标悬停在同一路径上并通过相同的第一行退出菜单,则空白列表项会显示我是否再次从第一行中选择相同的项目。我知道这可能会令人困惑,但我用截图来说明问题:http://imgur.com/6ixrXjk
我认为这个问题与以下内容有关:在CSS文件中没有正确读取函数但是我不确定。
这是我的HTML代码:
<div id="menu">
<ul>
<li>Home</li>
<li>Tires
<ul>
<li>Utility
<ul>
<li>Gripper</li>
<li>Radical</li>
</ul>
</li>
<li>Sport
<ul>
<li>Race-X</li>
</ul>
</li>
</ul>
</li>
<li>Contact
<ul>
<li>About us</li>
<li>Contact us</li>
</ul>
</li>
<li>Dealers
<ul>
<li>Locate a dealer</li>
<li>Become a dealer</li>
</ul>
</li>
<li>Downloads</li>
</ul>
</div>
这是我的CSS代码:
#menu {
height: 36px;
width: 960px;
text-align: center;
line-height: 36px;
color: #FFF;
float: left;
-webkit-box-shadow: 0 5px 10px -2px #888;
-moz-box-shadow: 0 5px 10px -2px #888;
box-shadow: 0 5px 10px -2px #888;
border-bottom: 3px solid #000;
background: #333;
font-family: 'Gill Sans', 'Lucida Grande', 'Lucida Sans Unicode', Verdana, Helvetica, Arial, sans-serif;
}
#menu ul li:hover > ul {
display: block;
}
#menu ul {
background: #333;
height: 100%;
padding: 0;
margin: 0;
list-style: none;
position: relative;
}
#menu ul:after {
content: "";
clear: both;
display: block;
}
#menu ul li {
width: 190px;
border: 1px solid #2a2a2a;
background: #333;
float: left;
}
#menu ul li:hover {
background: #1B1B1B;
}
#menu ul li.active {
background: #1B1B1B;
}
#menu ul li a {
display: block;
color: #FFF;
text-decoration: none;
}
#menu ul ul {
width: 189px;
background: #333;
padding: 0;
position: absolute;
display: none;
top: 100%;
}
#menu ul ul li {
width: 100%;
border-top: none;
border-left: 1px solid #494949;
border-right: 1px solid #494949;
border-bottom: 1px solid #494949;
list-style-position:inside;
position: relative;
float: left;
}
#menu ul ul li:hover {
background: #868686;
color: #FFF;
}
#menu ul ul li a {
line-height: 34px;
height: 34px;
}
#menu ul ul li a:hover {
background: #868686;
}
#menu ul ul ul {
width: 100%;
position: absolute;
left: 100%;
top:0;
}