【问题标题】:Vertically align text that is inside a select element for IE8垂直对齐 IE8 选择元素内的文本
【发布时间】:2011-08-03 18:09:47
【问题描述】:

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

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

【问题讨论】:

  • 你用什么代码来完成这个?
  • 我想做的只是 HTML 和 CSS
  • 我知道 - 你能发布你目前使用的代码吗?

标签: select internet-explorer-8 input vertical-alignment


【解决方案1】:

没有您的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>
    

【讨论】:

  • 好东西。无论出于何种原因,当您更改 input 的高度时,最新的 Firefox 和 Chrome 会正确重新设置行高,IE9 也会这样处理,但 IE 8 和 7 不会自动将行高设置为这样的。这有帮助。谢谢!
  • 设置行高以匹配高度对我没有帮助。 :(
猜你喜欢
  • 2011-10-04
  • 1970-01-01
  • 2019-07-26
  • 2011-07-07
  • 2021-06-21
  • 2011-11-16
  • 1970-01-01
  • 2012-09-07
  • 2014-01-22
相关资源
最近更新 更多