我使用CSS将<input>
的高度设置为2em
,但Google Chrome中的高度呈现方式不同。这是一个小提琴,显示了这一点:http://jsfiddle.net/hA4eD/1/
在我的电脑中,使用Chrome的开发工具,文本输入的高度恰好为32像素,而按钮输入的高度为28.79999 ...像素。如何在不手动调整像素数的情况下使它们相等?
答案 0 :(得分:2)
请将webkit外观属性添加为无值...
小提琴:http://jsfiddle.net/nikhilvkd/hA4eD/3/
input{
height:2em;
width:5em;
display:inline-block;
-webkit-appearance: none;/*new property*/
}
答案 1 :(得分:1)
问题在于输入具有您没有考虑的固有边界。您可以通过CSS将它们更改为具有相同的边框,但最终会使控件看起来更加丑陋(或者让您专门设置每个输入的边框并相应地调整高度,这意味着您最终将管理所有不同的样式)。
一种选择是使用-webkit-appearance css规则来禁用此功能,正如其他人所建议的那样。或者,您可以设置box-sizing: border-box;
告诉CSS您指定的高度应该是输入的整个高度,包括边框。