【发布时间】:2016-10-08 04:48:09
【问题描述】:
我目前正在将旧的 HTML 表单转换为不使用表格。标签需要固定宽度,这是我使用此站点的答案实现的。当前代码如下:
HTML
<div id="form">
<label for="field1">Name </label>
<input type="text" id="field1" value="default name" />
</div>
CSS
label {
float: left;
width: 50px;
white-space: nowrap;
}
input {
display: block;
overflow: hidden;
width: *;
}
#field1 {
width: 150px;
}
目前,标签在顶部垂直对齐。如何将标签和字段垂直对齐到中心?
编辑:我得到了很多答案,基本上通过指定数量的像素将我的标签填充到正确的位置。我不想这样做,因为它基本上是硬编码,而不是真正的垂直对齐到中间。
根据我在这里收到的一些建议,我已经清理了一些代码。请参阅上面的编辑代码。
我在label 中尝试过vertical-align: middle;,但它不起作用。请注意,用户的平台将是 IE。
【问题讨论】:
-
整个页面需要垂直居中对齐吗?
-
尝试改变标签的行高
-
@Mani 没有。只是标签字段对的每一行。我找到了有效的答案,但在标签中包含固定宽度后就没有了
-
你可以试试
padding: 4px;的fieldHeading -
填充基本上是硬编码一个绝对值,所以没有。
标签: html css vertical-alignment