2010-07-22 79 views
2

我有一些下拉菜单似乎并没有在IE8中很好地对齐 - 它们在Firefox 3和IE7中很好地对齐。具体来说,下拉菜单似乎忽略了我的权利:0;样式。一张图片胜过千言万语,所以这是什么样子:CSS下拉菜单在IE8中未对齐

Misaligned menu http://lh5.ggpht.com/_gXJgvXl6JFY/TEf9v1BmECI/AAAAAAAAAA4/iGF-Wi8CTyU/misaligned%20menu.png

正如你可以看到,下拉的右侧,应该与强调“管理”里的右边对齐,但它似乎在中间。

重要下拉CSS样式:

.ajs-menu-bar .ajs-drop-down { 
left:auto; 
right:0; 
} 

重要的 “管理员” 李风格是:

.ajs-menu-bar .ajs-menu-item, .ajs-menu-bar .ajs-button { 
float:left; 
list-style-image:none; 
list-style-position:outside; 
list-style-type:none; 
position:relative; 
} 

而对于该位的HTML是:

<li class="normal ajs-menu-item"> 
<a href="#" class="user trigger ajs-menu-title" id="user-menu-link"><span><span>admin</span></span></a>   
<div class="ajs-drop-down" style="width: 111px;"> 
<ul class="section-user-status first" id="user-menu-link-user-status"> 
... bunch of <li>s    
</ul> 
</div> 
</li> 

如果任何人都可以摆脱一些光线会很好,只是让我有点坚果:(。

在此先感谢!!!!

干杯, 珍妮

回答

2

我会建议在菜单专门针对IE8的一个单独的样式表。这是对IE8进行更改的唯一方法,而不是其他显示正常的浏览器。

下面大概的代码是不准确的(关于挑出一个浏览器),但它应该给你一个想法,该怎么办...

<![If lt IE7]> 
    <link href="ie8.css" type="text/css" rel="stylesheet" /> 
<![End If]--> 

一旦你做到了这一点,复制的CSS您的菜单到这个文件(是),并更改页边距下拉:

.ajs-menu-bar .ajs-drop-down { 
left:auto; 
right:0; 
margin-right: 40px !important; 
} 

如果更改如下所示不起作用,尝试左边距设置为负值,右页边距。 我知道,这个想法看起来很可笑,但在我对Liquid Design的研究中,我发现它有时是唯一正确的方法。

HTH

+0

感谢堆!我可能无法完全像这样使用条件包含,因为我在sitemesh中工作,但是我得到了这个想法和CSS。儿! – jenny 2010-07-23 00:57:52

+0

正如罗宾威廉姆斯在“双世人”中所说的......人们很高兴能够成为服务对象。^_ ^ – 2010-07-23 06:30:57