【发布时间】:2015-03-02 14:49:44
【问题描述】:
我正在尝试构建一个表单模块,以便无论表单可能有各种输入,始终满足以下条件:
- 表单在其包含元素内居中。 (我认为这只是
inline-block与text-align: center的结合。) - 输入的宽度都相同,并沿其左边缘排列。
- 标签可以是任意长度(在合理范围内),并且它们的右边缘都对齐。
- 表单的宽度仅与其最长的标签/输入组合一样宽(换句话说,表单的宽度是动态的,由最长的标签决定)。 (下图中的红线表示根据给定标签和输入的表单边界。)
基本上,我想要以下内容:
这种类型的布局很容易用表格来做,但我读到不建议将表格用于表格,所以我的问题是,如何在不使用表格的情况下完成所有这些操作?
谢谢。
编辑:布局必须在 IE8 中工作。
【问题讨论】:
-
我会说你应该把所有的东西都对齐,你有一个 jfiddle
-
display:table- 将 div 转换为表格 :) -
从不热衷于将 div 转换为表格。那时,我认为最好只使用一张桌子。无论如何,我喜欢将所有内容都向右对齐的想法。那是我最初的想法之一,我想我会同意的。谢谢。
标签: html css forms layout tablelayout