【问题标题】:Centering the text inside select elements [duplicate]在选择元素内居中文本[重复]
【发布时间】:2015-07-29 05:38:17
【问题描述】:

我的 HTML 表单中有一个选择元素,默认情况下,文本左对齐。 text-align: center; 不像文本输入那样居中。

从 Stack Overflow 上的其他答案来看,一些用户说要使用 text-indent 属性,但虽然它会移动文本,但它不适合对齐不同长度的文本。

虽然 CSS 最好,但 javascript/jQuery 解决方案也可以。

最后,我如何在表单选择元素中居中放置文本?

HTML 代码:

<select name="country">
    <option value="Afganistan">Afghanistan</option>
    <option value="Albania">Albania</option>
    <option value="Algeria">Algeria</option>
</select>

【问题讨论】:

  • 请发布您的 HTML 代码
  • 实际上并没有发布任何特殊的 HTML 代码,但如果您愿意,我会发布。
  • @PavSidhu 你想让所有选项居中还是只选择一个,选择后会显示?

标签: javascript jquery css


【解决方案1】:

HTML:

<select name="country">
<option value="Afganistan">Afghanistan</option>
<option value="Albania">Albania</option>
<option value="Algeria">Algeria</option>

CSS:

   select {

    height: 37px;
    padding: 0 20px 0 20px;
}

jsfiddle

如果您不想填充元素,则可以始终使用基于 Javascript 的扩展,该扩展通常使用 &lt;div&gt; 元素而不是实际的 &lt;select&gt; 元素,并允许您轻松设置样式。

https://formstone.it/components/dropdown/#options

【讨论】:

  • 这不是缩进text-indent这样的东西吗?
  • 仍然没有居中 - 只是缩进两边都有填充。
  • text-align 仅适用于块级元素。但是,即使您将 display: block 分配给 select 和 option 元素,文本也可能不会居中。原因是浏览器使用其内置例程来呈现表单字段,而这些例程仅在有限程度上受 CSS 规则的影响。您必须使用某种缩进。您可以将其更改为与 对齐
猜你喜欢
  • 1970-01-01
  • 2018-07-25
  • 1970-01-01
  • 2023-02-03
  • 2015-07-21
  • 2019-02-11
  • 2019-01-20
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多