2011-07-25 24 views
4

我有一个类型为select的HTML输入元素。元素的高度是28px。在不使用CSS修改元素的情况下,内部文本会自动在除IE8以外的所有浏览器中垂直对齐。在IE8中,select的文本位于元素的左下角。垂直对齐IE8的select元素中的文本

有谁知道如何垂直对齐HTML选择元素内的文本?

+0

你用什么代码来完成这个任务? – Nightfirecat

+0

我想这样做只是在HTML和CSS –

+0

我知道 - 你可以发布你迄今使用的代码吗? – Nightfirecat

回答

3

没有你的html很难确切地知道你的造型。这听起来像你正在使用类似<input type="select" />但这不是实际有效的HTML。

但是,要垂直对齐中间的文字,您需要将line-height设置为与您的height相同的图形。

所以在这种情况下,您需要设置line-height: 28px;以匹配height: 28px;

为了您html我会建议,要么使用:

  • <input type="text" />,如果你正在寻找一个标准的文本输入

  • 如果你正在寻找一个下拉选择:

    <select> 
        <option value="Test1">Test 1</option> 
        <option value="Test2">Test 2</option> 
    </select> 
    
+0

好东西。无论出于何种原因,当你改变'input'的高度时,最新的Firefox和Chrome会正确地重新设置行高,IE9也会这样处理,但IE 8和7不会自动将行高设置为这样。这有助于。谢谢! – Mattygabe

+7

设置行高以匹配高度并没有帮助我。 :( – yiwen