见这里:http://jsfiddle.net/wHztz/67/
在此示例中,颜色是背景图像的占位符,我注意到,当从display:block
中删除.innerLeft ul li a
时,嵌套列表会停止重叠,但后面的图像将无法正确显示。
我对CSS没有多少经验。有没有解决的办法?谢谢!
HTML:
<div class="innerLeft">
<ul>
<li><a href="">Fruit</a></li>
<li>
<ul>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
<li><a href="">Apples</a></li>
</ul>
</li>
<li><a href="">Vegetable</a></li>
</ul>
</div>
CSS:
.innerLeft ul {
width:199px;
float:left;
margin:0px;
padding:0px 0 0 12px;
list-style:none;
min-height:10px;
}
.innerLeft ul li{
padding:0px;
margin:0px 0 10px 0;
height:18px;
}
.innerLeft ul li a{
background: red;
display:block;
}
.innerLeft ul li ul li a{
background: blue;
}
答案 0 :(得分:3)
.innerLeft ul li {
clear: left; /* Added */
padding:0px;
margin:0px 0 10px 0;
height:18px;
}
答案 1 :(得分:0)
使用display:inline-block;
代替
.innerLeft ul li a{
background: red;
display:inline-block;
}
它的发生是因为您已将css应用于ul li a
而非ul li ul
:)