2011-09-29 54 views
1

目前我正在試圖創造一些嵌套列表,顯示如下...CSS的嵌套列表

一... R ... X
乙內容S ... Y
Ç ...牛逼... Z

(其中字母最終會被字代替),並已在Chrome和Firefox完美地使這個工作,但是當我使用Internet Explorer我得到類似下面的...


乙...ř
ç內容S ... X
......牛逼... Y
...........ž

我認爲它可能是用CSS做,但請有人可以幫助我解決這個問題,HTML和CSS顯示如下,預先感謝任何幫助。

HTML

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
<head> 
<link rel=stylesheet href="lists in IE.css" type="text/css"> 
</head> 
<body> 

<div id="container"> 

    <ul id="links-nav"> 
     <li> 
      <ul> 
       <li><a href="#">A</a></li> 
       <li><a href="#">B</a></li> 
       <li><a href="#">C</a></li> 
      </ul> 
     </li> 
     <li> 
      <ul> 
       <li><a href="#">L</a></li> 
       <li><a href="#">M</a></li> 
       <li><a href="#">N</a></li> 
      </ul> 
     </li> 
     <li> 
      <ul> 
       <li><a href="#">X</a></li> 
       <li><a href="#">Y</a></li> 
       <li><a href="#">Z</a></li> 
      </ul>  
     </li> 

    </ul> 

    <div class="clear"></div> 
</div> 

</body> 

</html> 

CSS

#container{ 
    width:940px; 
    margin:0px auto; 
    border: 1px solid #000; 
    padding: 20px 10px; 
    height:auto; 
    font-family: Arial, sans-serif; 
    font-size:11px; 
} 

.clear { 
    clear: both; 
    height: 0; 
    overflow: hidden; 
} 


a{ 
    text-decoration:none; 
    color:#555; 
} 

#links-nav li, li ul li{ 
    list-style:none; 
} 

#links-nav{ 
    list-style-type: none; 
    margin:0px; 
    padding:0px; 
} 

#links-nav li ul{ 
    float:left; 
    width:168px; 
    padding: 0px 10px; 
    list-style-type: none;  
} 

回答

1

添加在你的CSS

#links-nav > li { 
    width:168px; 
    float:left; 
} 

演示:http://jsfiddle.net/qUJuy/2/

Ø ř

#links-nav > li { 
    width:168px; 
    display:inline; 
} 

演示:http://jsfiddle.net/qUJuy/3/

上面將修復IE7的誤差(在IE8它已經正確的)。

+0

這工作出色謝謝,我發現現在IE是在容器div的底部添加額外的填充,你知道如何阻止IE添加此填充? – Phil

+0

@Phil它需要清除浮游物。爲'#links-nav'添加'overflow:hidden' – Sotiris

+0

將條件註釋和設置爲0的IE添加到0 – albert