0
我有一个内嵌菜单的问题,只在ie7出现错误。唯一一个菜单里面有另一个菜单,与其他菜单不是内联的,其余的菜单似乎都被压低了。在IE7中嵌入UL LI的CSS Bug
HTML
<div id="topnav">
<ul id="jsddm">
<li id="">
<a id="" href="/">Home</a>
</li>
<li id="">
<a href="/about.aspx">About</a>
<ul style="visibility: hidden;">
<li>
<a href="/about/board.aspx">Board</a>
</li>
<li>
<a href="/about/contact.aspx">Contact</a>
</li>
</ul>
</li>
<li>
<a href="/practices.aspx">Practices</a>
</li>
<li>
<a href="/how-we-work.aspx">How we work</a>
</li>
<li>
<a href="/patients.aspx">Patients</a>
</li>
<li>
<a href="/news-links.aspx">News & Links</a>
</li>
<li>
<a href="/link.aspx">Link</a>
</li>
</ul>
</div>
CSS
#jsddm
{ margin: 0;
padding: 0;
width: 100%;
}
#jsddm li
{
display: inline-block;
list-style: none;
font: 12px Tahoma, Arial;
width: 100px;
text-align: center;
}
*+html #jsddm li { display:inline }
* html #jsddm li { display:inline }
#jsddm ul li
{
display: block;
font: 12px Tahoma, Arial;
}
#jsddm li ul
{
margin: 0 0 0 0;
padding: 0;
position: absolute;
visibility: hidden;
border-top: 0px solid white;
*margin: 0 0 0 -50px; /* IE 7 and below */
/* margin: 0 0 0 -50px\9; IE 8 and below */
}
#jsddm ul li ul li
{
font: 12px Tahoma, Arial
}
#jsddm li a
{
display: block;
background: #009EE0;
padding: 0;
line-height: 28px;
text-decoration: none;
border-right: 0px solid white;
width: 70px;
color: #EAFFED;
white-space: nowrap;
font-weight: bold;
width: 100%;
}
#jsddm li a:hover
{ background: #1A4473}
#jsddm li ul li
{
float: none;
*margin: -2px 0 0 0;
*padding:0;
}
+html #jsddm li ul li { }
#jsddm li ul li a
{
width: auto;
background: #009EE0
font-weight: bold;
}
#jsddm li ul li a:hover
{ background: #0E559C }
它使用jQuery函数来显示dropdownmenu但它一点儿也不影响静态HTML/CSS。
谢谢。
即时overiding它用于与IE7: * + HTML #jsddm李{显示:内联; } * html #jsddm li {display:inline; } 直接#jsddm李 – PeteTheGreek
尝试'浮动'而不是'inline' –
谢谢,我已经有一个规则,只是在ie7里,当我测试的东西,只是想知道是否有一些特殊的黑客有人提出了,所以你不必回落到* float:left。我现在已经走了。干杯 – PeteTheGreek