首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >填充与Firefox4-8中的边框冲突?(HTML/CSS)

填充与Firefox4-8中的边框冲突?(HTML/CSS)
EN

Stack Overflow用户
提问于 2011-12-26 17:39:03
回答 1查看 143关注 0票数 1

我在Firefox4-8中发现了一个非常恼人的问题,就是填充超出了边框。谷歌浏览器,IE9,Opera11和Safari不受此影响,并完美地显示它。

我已经制作了一个jsfiddle来演示这种效果-当你将鼠标悬停在一个列表项上时,该列表项上的bg颜色会发生变化,就像它在堆栈溢出徽标旁边的按钮上所做的一样。

问题是,如果底部填充设置为10px,Firefox会将其渲染为超出li,其他浏览器也没有问题,但如果更改为9px,Firefox会喜欢它并将其显示得很好,但浏览器的其余用户会将填充渲染为“太短”。

真正令人困惑的是,一个通常符合标准的浏览器会像这样背离这个包。

下面是jsfiddle (我已经注释了关键行,因此您可以在9/10px之间更改它并查看差异):http://jsfiddle.net/NaxUj/7/

有什么原因以及如何修复它的想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-12-26 17:54:48

font line-height的平均问题,不同的浏览器会有不同的处理。所以,与其用paddingline-height赋给你的LI,不如这样:

代码语言:javascript
复制
ul#mainmenu li {
    display:block;
    float:left;
    width:140px;
    line-height:30px;
    text-align:center;
}

http://jsfiddle.net/NaxUj/8/

原因:

因为你没有定义你的liline-height,所以每个浏览器都会根据它们来render line-height。因此,一定要为跨浏览器功能定义line-height

检查这个例子,在这个例子中,我没有删除padding,还给了line-height

http://jsfiddle.net/NaxUj/9/

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8634519

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档