3

大家好,我怎样才能修复 Chrome 和 Firefox 的一个像素差异?我的菜单链接在 Chrome 中显示正确,但在 Firefox 中,我的菜单链接比 Chrome 小 1 px

这是CSS:

ul#menu {
    padding: 0 0 2px;
    position: relative;
    margin: 0;
    margin-top:-3px;
    margin-left:7px;
    float:left;
    height:34px;
    display: inline-block; 
}

ul#menu li {
    text-align: center;
    display: inline;
    list-style: none;
    font-family: 'Museo300Regular';
    font-size:15px;
    font-style:normal;
    line-height: 1;
}

ul#menu li a {
    background-image:url(../../images2/images/menu_bg_normal.jpg); 
    background-repeat: repeat;
    padding:5px 23px 6px 23px; /*üst sol alt sağ */
    font-weight: normal;
    text-decoration: none;
    line-height: 2.8em;
    background-color: #e8eef4;
    color: #FEFEFF;
    cursor:pointer; 
}

.deneme 
{
    width:964px;
    margin-left:auto;
    margin-right:auto;
}

这是HTML部分:

<div class="deneme">
    <ul id="menu">         
     <li><a>Başkan</a></li>
     <li><a>Meclis</a></li>
     <li><a>Enc&#252;men</a></li>
     <li><a>Kurumsal</a></li>
     <li><a>Maltepe</a></li>
     <li><a>Etkinlikler</a></li>
     <li><a>İhaleler</a></li>
     <li><a>E-Belediye</a></li>
     <li><a id="link">Linkler</a></li>
    </ul>
</div>
4

2 回答 2

2

编辑 3:添加图像以证明高度相同...

大视野

在此处输入图像描述

关闭细节:

在此处输入图像描述

编辑 2:这与您的第一个代码相同,并且在 Chrome 和 Firefox 中呈现相同:http: //jsfiddle.net/qavB6/4/

添加

ul#menu li {
/*...*/
display: inline-block;
margin-top: 4px;
}

line-height: 35px;ul#menu li a {

享受...

编辑:

将 line-height 设置为特定值,它在 Firefox 和 Chrome 上以相同的方式呈现。

http://jsfiddle.net/qavB6/3/

我不知道为什么,但深入挖掘我发现该设置line-height: 38px;line-height: 37px; 不会更改 Chrome 中的行高,而它在 Firefox 上会更改。

您可以在 Chrome 中看到 and 或 between and 之间的差异36px37px38px39px不到 and 之间37px的差异38px。这就是奇怪行为开始的地方......

于 2012-10-30T13:38:33.350 回答
0

此代码仅针对带有 CSS 的 Firefox

<style type="text/css">
@-moz-document url-prefix() {
h1 {
    color: red;
}
}
</style>

使用此代码分隔 Firefox 的 css,添加您的代码而不是 h1 以实现像素完美。

于 2012-10-30T13:15:22.867 回答