2010-02-05 146 views
0

我有一個水平鏈表(實現看起來像標籤),我用於網站導航。CSS鏈接導航瀏覽器兼容

我今天在手機上查看了我的頁面,但在Opera或Internet Explorer中無法正確顯示。當我回到家時,我檢查了Internet Explorer 6,它看起來也是一樣。

HTML

<div id="navcontainer"><ul> 
    <li><a href="">Home</a></li> 
    <li><a href="">Projects</a></li> 
    <li><a href="" id="current">Resume</a></li> 
    <li><a href="">Referances</a></li> 
    <li><a href="">Fun</a></li> 
</ul></div> 

CSS

#navcontainer>ul{ 
    text-align: center; 
    padding: 3px 0; 
} 

#navcontainer>ul>li { 
    display: inline; 
} 

#navcontainer>ul>li>a { 
    padding: 3px 0.5em; 
    margin-left: 3px; 
    border: 1px solid #778; 
    border-bottom: none; 
    background: #bbd; 
} 

#navcontainer>ul>li>a:hover { 
    background-color: #369; 
} 

#navcontainer>ul>li>a#current { 
    background: #fff; 
    border-bottom: 1px solid white; 
} 

什麼是改變這種做法,它更符合瀏覽器的最佳方式?

+0

是缺乏的第一個div只是一個錯字一個右尖括號的? –

+2

隨着Google放棄對IE6的支持,我終於可以認同去年大家一直尖叫同樣的事情。 ** Internet Explorer 6已經死機**。由於構建符合其渲染的網站的成本遠遠高於獎勵,因此不再支持它。 –

+0

@ John,它看起來對我很正確。身份證是否把你扔掉? @安德魯,是的,但我很驚訝地看到我的新手機上的瀏覽器做了同樣的事情,所以我想知道它有多少'問題'。 –

回答

1

IE6非常不喜歡display:inline。請在您的li和您的li a上嘗試float:left

此外,IE6不支持>子選擇器。

1

首先,Internet Explorer 6不支持您正在使用的直接子選擇器(>)。

1

對於您應該設置鋰項目:

float: left; 
display: inline; 
list-style-type: none; 
0

所以這裏的問題是這樣的?

 
<div id="navcontainer"<ul> 
<li><a href="">Home</a></li> 
<li><a href="">Projects<a href="" id="current">Resume/a></li> 
<li><a href="">Referances<a href="">Fun

 
<div id="navcontainer"><ul> 
<li><a href="">Home</a></li> 
<li><a href="">Projects<a href="" id="current">Resume/a></li> 
<li><a href="">Referances<a href="">Fun