Firefox 和 Chrome 中的输入高度差异
为什么 Chrome 中的输入高度比 Firefox 更大
请参阅此处的示例 http://jsfiddle.net/jitendravyas/89Msh/1/
select, input, textarea, button {
font: 99% sans-serif;
}
input, select {
vertical-align: middle;
}
body, select, input, textarea {
color: #444444;
}
button, input, select, textarea {
margin: 0;
}
input, textarea {
font-family: inherit;
line-height: 1.5;
}
input {
border: 0 none;
font-size: 32px;
line-height: 1.1;
margin-right: 29px;
padding: 3px 3px 0;
width: 206px;
border-radius: 7px;
}
Why height in Chrome is bigger than Firefox of input
See example here http://jsfiddle.net/jitendravyas/89Msh/1/
select, input, textarea, button {
font: 99% sans-serif;
}
input, select {
vertical-align: middle;
}
body, select, input, textarea {
color: #444444;
}
button, input, select, textarea {
margin: 0;
}
input, textarea {
font-family: inherit;
line-height: 1.5;
}
input {
border: 0 none;
font-size: 32px;
line-height: 1.1;
margin-right: 29px;
padding: 3px 3px 0;
width: 206px;
border-radius: 7px;
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
问题本质上是
line-height
。Chrome 看到的
line-height
与它看到的height
非常相似,而 Firefox 则不然。向输入添加高度应该可以解决问题,但您应该小心
line-height
和height
匹配。例如:
高度:20px;行高:20px;
。http://jsfiddle.net/e2agj/1/ - 最后一个示例输入是正确的。
The problem is essentially
line-height
.Chrome sees
line-height
much like it seesheight
and Firefox doesn't.Adding height to the input should solve the problem, though you should be careful that your
line-height
andheight
match.For example:
height: 20px; line-height: 20px;
.http://jsfiddle.net/e2agj/1/ - Last example input is the correct one.
我通常使用
padding
而不是 height 来推动输入的总高度。这样做,我就不必纠结于 Chrome 和 Firefox 的不同解释。I usually use
padding
instead of height to push the total height of the input. Doing so, I do not have to fight around with the different interpretations of Chrome and Firefox.只需尝试溢出:隐藏输入
Simply try overflow:hidden on input
我认为这与您为
输入
设置字体
样式的方式有关。每个浏览器都有自己的
sans-serif
渲染方式,因为它实际上不是一种字体。因此,如果没有特定的字体集,您可能会出现一些不一致的情况。
I think it has to do with the way you styled the
font
for theinput
.Each browser has its own rendering for
sans-serif
, as that is really not a font.Therefore, without a specific font set, you could expect some inconsistencies.
这应该适用于 Chrome & Firefox 在选择元素上:
This should work in Chrome & Firefox on select elements:
我遇到了同样的问题,必须结合
line-height
和padding
才能使事情正常进行。I had the same problem and had to combine
line-height
ANDpadding
to make things work.我在 Firefox 、 Chrome 和 Chrome 上遇到了相同的输入行高问题。 Opera 浏览器。所以我结合了 line-height 、 height 和 font-size 以获得合适的外观。
I had gone throught same input line-height problem across Firefox , Chrome & Opera browsers. So I combined line-height , height and font-size for the appropriate look.