0
<div id="combobox">
    <label><input type="checkbox" id="tag3"
        name="checkbox" onclick="toggleTag('tag3')"/>DialogProc</label><br/>
    <label><input type="checkbox" id="tag2"
        name="checkbox" onclick="toggleTag('tag2')"/>fds</label><br/>
</div>

div用作复选框及其标签的容器。我习惯于<br/>将一个置于另一个之下。有没有办法在不使用<br/>(css)的情况下拥有相同的布局?

4

3 回答 3

4

<p>更好的做法是按元素将它们分开:

<p><label for="tag 3"><input type="checkbox" id="tag3"
        name="checkbox" onclick="toggleTag('tag3')"/>DialogProc</label></p>

<p><label for="tag2"><input type="checkbox" id="tag2"
        name="checkbox" onclick="toggleTag('tag2')"/>fds</label></p>

另请注意,出于多种原因(例如可访问性) ,建议为标签提供 for 属性以将它们与输入相关联。例如,您将使用<label for="tag3">第一个标签<input type="checkbox" id="tag3">

如果您想减少使用<p>元素引起的边距,那么您只需对它们应用一些基本的 CSS 规则,例如

p {
  margin:0px;
}

这是一个jsFiddle。

于 2013-05-04T10:29:23.883 回答
2

CSS:

#combobox label {
    display:block;
}

然后删除<br />标签

于 2013-05-04T10:29:32.757 回答
0
//css
#combobox label {
    float: left;
    clear: left;
}
于 2013-05-04T10:28:37.380 回答