Firefox和Chrome之间的1像素线条高度差

在asp.net中使用母版页进行新网站设计。页面的页眉是一个35px高的“菜单栏”,其中包含一个asp菜单控件,呈现为无序列表

所选菜单项的样式为不同颜色的背景,左右两侧各有2个边框。所选菜单项的底部应与菜单栏的底部对齐,以便所选“选项卡”看起来好像流入下面的内容。在firefox和IE中看起来不错,但在chrome中,“标签”似乎比菜单栏底部高出1像素

只是想知道是否有某种我不知道的bug

我意识到你很可能需要代码来帮助解决这个问题,所以我会尽快发布css

编辑:

这是菜单的css

div.hideSkiplink
{     
宽度:40%;
浮动:对;
高度:35px;
}
分区菜单
{
填充:0px 0px 0px 0px;
显示:内联;
}
分区菜单
{
列表样式:无;
}
分册菜单
{
保证金:0px 4px 0px 0px;
}
分区菜单ul li a,分区菜单ul li a:已访问
{
颜色:#ffffff;
显示:块;
边际上限:0px;
线高:17px;
填充:1px20px;
文字装饰:无;
空白:nowrap;
}
分区菜单ul li a:悬停
{
颜色:#ffffff;
文字装饰:无;
边框顶部:1px实心#fff;
右边框:1px实心#fff;
边框底部:无;
左边框:1px实心#fff;
}
分区菜单ul li a:激活
{
背景:#ffffff!重要;
边框顶部:2个实心#a10000;
右边框:2px实心#a10000;
边框底部:无;
左边框:2倍实心#a10000;
颜色:#000000!重要;
字体大小:粗体;
}
已选择分区菜单ul a
{
颜色:#000000!重要;
字体大小:粗体;
}
已选择分区菜单ul li
{
背景:#ffffff!重要;
边框顶部:2个实心#a10000;
右边框:2px实心#a10000;
边框底部:无;
左边框:2倍实心#a10000;
}
div.menu ul li.selected a:悬停
{
边界:无;
}

选定的类通过jquery添加到li和a元素中

下面是问题的截图。。。
chrome示例位于顶部,您可以在选项卡下方看到1px的红色边框。
底部是firefox图像,看起来一切正常

编辑:

在进一步研究这个问题之后,我发现实际上是“header”div本身在chrome中增长了1倍。。。这对我来说似乎很奇怪

这些答案都不能解决问题

设置:

行高:1;
垫顶:2件;

因为webkit&mozilla渲染引擎以不同的方式实现线条高度,但不使用它来操纵单行项目的测量

对于菜单、按钮等项目,尤其是非常小的通知气泡,请将行高重置为正常值,并使用填充或边距使其行为相同

下面是一个JSFIDLE来说明这个问题:
http://jsfiddle.net/mahalie/BSMZe/6/

发表评论