我有一个图像作为输入字段的背景。我可以轻松设置行高和字体大小,但是当您在输入内部单击时,光标线就在背景图像之外。
是否存在控制此问题的CSS声明(您称之为?)?
答案 0 :(得分:22)
您可能正在使用line-height
将输入中的文本显示为垂直居中。但是,这也是你问题的罪魁祸首。请尝试尝试使用输入的padding
设置,同时将line-height
设置为normal
。
答案 1 :(得分:3)
使用填充的问题在于它在不同浏览器中显示不一致,而输入文本区域中的行高在IE7
,IE8
,IE9
,{{1}中均匀显示},Safari
,Chrome
和Firefox
。看起来您必须在输入光标或输入文本垂直对齐之间进行选择。
答案 2 :(得分:1)
是,行高。
尝试:
input {height: 28px; font-size: 10px; padding: 7px 5px;}
答案 3 :(得分:0)
帖子Vertically aligning the text cursor (caret?) in an input box with jQuery, Javascript or CSS可能会对您有所帮助。
您的填充大小似乎会影响光标大小和位置。
答案 4 :(得分:0)
如果我们有代码会很好,你也可以尝试
background:url("yourimage") right top no-repeat;
font-size:12px;
padding:5px 5px;
line-height:normal;
取决于您的图片尺寸
答案 5 :(得分:0)
使用line-height: normal
或line-height:inherit
就可以解决这个问题。
谢谢你的答案。
答案 6 :(得分:0)
输入标签中的文字可以自动垂直居中,不要在其上使用行高。