2014-01-29 65 views
2

我已经创建了一个CSS和HTML导航菜单,适用于除IE6 - IE8以外的所有浏览器。我该如何做这项工作?我试图使我的CSS和HTML尽可能小,以帮助兼容性,但无济于事。下拉CSS和HTML导航菜单不工作在IE6 - IE8

CSS和HTML

ul ul { 
 
    display: none; 
 
} 
 
ul li:hover > ul { 
 

 
    display: block; 
 
} 
 
ul { 
 
    background-color: #99CCFF; 
 
    background-color: rgb(153, 204, 255); 
 
    list-style-type: none; 
 
    position: relative; 
 
    display: inline-table; 
 
    font-family: 'Julius Sans One', sans-serif; 
 
} 
 
ul:after { 
 
    content: ""; clear: both; display: block; 
 
} 
 
ul li { 
 
    float: left; 
 
    display:none; 
 
} 
 
ul li:hover { 
 
    background: #6699CC; 
 
} 
 
ul li:hover a { 
 
    color: #000000; 
 
} 
 
ul li a { 
 
    display: block; padding: 25px 40px; 
 
    color: #000000; text-decoration: none; 
 
} 
 
ul ul { 
 
    background: #99CCFF; padding: 0; 
 
    position: absolute; top: 100%; 
 
} 
 
ul ul li { 
 
    display:inline; 
 
    float: none; 
 
    border-top: 0px solid #6b727c; 
 
    border-bottom: 0px solid #575f6a; 
 
    position: relative; 
 
} 
 
ul ul li a { 
 
    padding: 15px 40px; 
 
    color: #000000; \t 
 
} \t 
 
ul ul li a:hover { 
 
    background: #6699CC; 
 
} 
 
ul ul ul { 
 
    position: absolute; left: 100%; top:0; 
 

 
}
<ul id="nav"> 
 
    <li><a href="#">Contact Us</a> 
 
    <ul> 
 
     <li><a href="address.html">Address</a></li> 
 
     <li><a href="rentals.html">Rentals</a></li> 
 
     <li><a href="phonenumbers.html">Phone Numbers</a></li> 
 
    </ul> 
 
    </li> 
 
    <li><a href="#">Mass</a> 
 
    <ul> 
 
     <li><a href="http://www.usccb.org/nab/today.shtml" target="_blank">Readings</a></li> 
 
     <li><a href="bulletins.html">Bulletins</a></li> 
 
     <li><a href="http://www.vatican.va/archive/ccc_css/archive/catechism/ccc_toc.htm" target="_blank">Catechism</a></li> 
 
     <li><a href="http://www.archindy.org/" target="_blank">Archdiocese of<br>Indiana</a></li> 
 
     <li><a href="confessions.html">Confession</a></li> 
 
     <li><a href="dailymass.html">Mass Schedule</a></li> 
 
    </ul> 
 
    </li> 
 
    <li><a href="#">Ministries</a> 
 
    <ul> 
 
     <li><a href="school.html">Pre-School</a></li> 
 
     <li><a href="daycare.html">Day Care</a></li> 
 
     <li><a href="ccd.html">CCD</a></li> 
 
     <li><a href="http://www.gandouministry.com/" target="_blank">Haiti<br>Ministry</a></li> 
 
    </ul> 
 
    </li> 
 
    <li><a href="#">Info</a> 
 
    <ul> 
 
     <li><a href="park.html">Walking<br>Park</a></li> 
 
     <li><a href="councils.html">Councils &<br>Committees</a></li> 
 
     <li><a href="cemetery.html">Cemetery Rules</a></li> 
 
     <li><a href="bulletins.html">Bulletins</a></li> 
 
     <li><a href="http://www.vatican.va/archive/ccc_css/archive/catechism/ccc_toc.htm" target="_blank">Catechism</a></li> 
 
    </ul> 
 
    <li><a href="#">Activities</a> 
 
    <ul> 
 
     <li><a href="laborday.html">Labor Day<br>Festival</a></li> 
 
     <li><a href="bingo.html">Bingo</a></li> 
 
     <li><a href="drawdon.html">Drawdown</a></li> 
 
     <li><a href="fund.html">MSGR Schmitz<br>Memorial Fund</a></li> 
 
    </ul> 
 
    </li> 
 
</ul>

+1

嗯,首先,'>'[*不*由IE6的支持(http://caniuse.com/css-sel2)我建议放弃对他们的支持。如果你真的关心IE用户,不要做一个纯粹的CSS下拉菜单。你需要JS。 –

+2

您提供的代码甚至不能在任何浏览器中运行... [jsfiddle](http://jsfiddle.net/SinisterSystems/p7BG6/7/) –

回答

0

看起来你有太多的UL选择在你的CSS规则前面。

<ul> 
    <li> 
     <ul> </ul> 
    </li> 
<ul> 

这是您的基本结构。尝试从其中超过2个的css中删除额外的ul

其次,我注意到你正在使用行内表规则。像这样的规则往往与老版本的IE有关,所以请确保对这些类型的规则进行兼容性检查。这里还有一个SO张贴作为参考,以这样的:

display:inline-table