【发布时间】:2009-12-15 15:25:52
【问题描述】:
我的表单上有以下元素:
<li>
<label class="fixed" for="Interests">Program genre interests:</label>
<label for="Sports"><%=Html.CheckBox("Sports")%>Sports</label>
<label for="Comedy"><%=Html.CheckBox("Comedy")%>Comedy</label>
<label for="News"><%=Html.CheckBox("News")%>News</label>
<label for="Drama"><%=Html.CheckBox("Drama")%>Drama</label>
<label for="Reality"><%=Html.CheckBox("Reality")%>Reality</label>
<label for="Kids"><%=Html.CheckBox("Kids")%>Kids'</label>
</li>
“固定”类只是使标签成为具有固定宽度的内联块(以正确对齐字段)。如果复选框由于某种原因被强制换行,问题就会出现,因为第二行复选框从标签下方开始,而不是与第一行复选框左对齐。
我正在努力减少必要的标记/样式,但我不确定实现我正在寻找的对齐方式的最有效方法。我得到的是:
label text here: cb1, cb2, cb3, cb4
cb5, cb6, cb7, etc...
而我想要的是
label text here: cb1, cb2, cb3, cb4
cb5, cb6, cb7, etc...
实现这个的最短/最简单的html/css是什么?
编辑:我应该注意我试图避免使用浮动,因为页面的其余部分将包含一些浮动元素,并且我之前遇到过嵌套浮动的问题。
【问题讨论】:
-
您的示例彼此不一致。是不是“节目类型兴趣:”变成了“label text here:”,“[] sports”变成了“cb1”?
-
嗯,是的。我只是想在第二组示例中显示布局。内容无关紧要。
-
对,但是标签很多。你看到歧义了吗?
-
呃,我认为很明显,复选框周围的标签文本会出现在复选框旁边。很抱歉,如果意图不明确。