基本上我希望span和input元素占用相同数量的垂直空间,以便正确对齐两个框中的文本。当不浮动元素时,我可以很容易地实现这一点。但是只要我添加一个浮动属性,就会在输入元素的高度上添加一些额外的像素。我无法理解为什么会这样。
我该如何解决?
iOS 6上的Safari和桌面上的Chrome存在此问题。在Firefox中也会发生,但效果有所不同。
我创建了显示问题的this fiddle。
<input class='float' value="some text" id='input2'/>
<span class='float' id='text2'>some text</span><br />
input, span {
font-family: Helvetica;
font-weight: bold;
font-size: 15px;
line-height: 15px;
padding: 0px;
border: 0px;
}
input {
text-align: right;
}
.float {
float: right;
}
答案 0 :(得分:2)
两件事。似乎浮动输入给它一个2px的边距,你可以轻松删除。如果你这样做并删除了line-height属性,那么一切似乎都在两个方面排列。
input, span {
font-family: Helvetica;
font-weight: bold;
font-size: 15px;
padding: 0px;
border: 0px;
}
input {
text-align: right;
}
.float {
float: right;
}
input.float {
margin:0px;
}