我正在尝试为输入表单格式化表格,如下所示。该表看起来有点像这样:
Name:
Time of day:
等等,其中每个字段标签后面跟着输入字段。 我的目标是拥有一个包含两列的表,一列用于字段标签,另一列用于输入字段,例如:
我当然知道我可以将左栏固定为例如20em长,另一列100%,但这不是我要求的 - 我不想测量然后输入像20em那样的固定宽度;我希望宽度自动从该列中最长项目的宽度派生。这听起来像是一个相当普遍的愿望;有没有办法简单地做到这一点?
答案 0 :(得分:7)
使用white-space: nowrap;
CSS样式,如下面的代码所示。当然,您需要在两列之间添加边距或填充,以便不对输入框按下冒号(:
)。 jsFiddle example of the code below
HTML:
<table class="fullWidth">
<tr>
<td class="nowrap">Name:</td>
<td><input type="text" /></td>
</tr>
<tr>
<td class="nowrap">Time of Day:</td>
<td><input type="text" /></td>
</tr>
</table>
CSS:
.nowrap {
white-space: nowrap;
width: 1px;
}
.fullWidth {
width: 100%;
}
input {
width: 100%;
display: block;
}