这是第一次尝试:http: //jsfiddle.net/h4Xxs/
- 2 列(浮动 div,每列宽度为 50%)
- 每个标签都被放入一个
label
元素中,而事实并非如此
for
每个标签都通过/属性与其表单元素相关联id
(您可以单击一个标签,这将选择其表单元素。而且它更易于访问)
- 带有图例的字段集中的一堆单选按钮。如果没有边框并且图例上带有图例,您将无法识别上面带有图例的众所周知的灰色边框。该字段集
clear: both
通过类具有.clear
,因为前div
两个是浮动的。
- 所有单选按钮及其新标签都在一个不会位于浮动图例下方的 div 中,因为此 div 正在通过创建格式化上下文
overflow: hidden
(否则第二行单选按钮将在图例下方开始,如您所见img { float: left }
在大多数文本中,文本向右,然后在 a 下方)
- 4 列单选按钮,但它并不完美,因为一个标签需要 2 行,每个标签上的现有宽度为 8em。不确定它应该是什么样子,所以我只
span
将之前添加的 s 垂直对齐到顶部(否则真的很难看)。随意修改他们的布局,以满足您的需求。
就是这样。错误,删除我添加的所有轮廓,它们只是为了更好地理解!
HTML:
<div id="search-1">
<div class="left w50">
<p>
<label for="a1">Park</label>
<select name="" id="a1">
<option></option>
</select>
</p>
<p>
<label for="a2">Lecture Style</label>
<select name="" id="a2">
<option></option>
</select>
</p>
<p>
<label for="a3">Room Structure</label>
<select name="" id="a3">
<option></option>
</select>
</p>
</div>
<div class="left w50">
<p>
<label for="b1">Capacity</label>
<input type="text" class="slider_text" disabled="disabled" id="b1">
</p>
<div class="slider"></div>
<label for="b2">Week</label>
<input type="text" class="slider_text2" disabled="disabled" id="b2"
/>
<div class="slider2"></div>
</div>
<fieldset class="clear">
<legend>Facilities</legend>
<div class="item">
<span>
<input type="checkbox" name="fac" id="ch1"><label for="ch1">Chalk board</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch2"><label for="ch2">Computer</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch3"><label for="ch3">Data projector</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch4"><label for="ch4">Dual data projector</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch5"><label for="ch5">Induction loop</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch6"><label for="ch6">Microphone</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch7"><label for="ch7">OHP</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch8"><label for="ch8">Review</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch9"><label for="ch9">Visualiser</label>
</span>
<span>
<input type="checkbox" name="fac" id="ch10"><label for="ch10">Wheelchair access</label>
</span>
</div>
</fieldset>
</div>
CSS:
body {
font-family: 'segoe ui', arial, helvetica, sans-serif;
padding-right: 20px;
font-size: 14px;
}
.left {
float: left;
outline: 1px dotted green;
}
.clear {
clear: both;
}
.w50 {
width: 50%;
}
label {
width: 8em;
float: left;
text-align: left;
display: block;
}
select {
width: 12em;
}
.slider, .slider2 {
width: 100%;
margin-top: 5px;
}
input {
border: none;
font-family:'segoe ui', arial, helvetica, sans-serif !important;
font-size: 14px;
padding: 0px;
background-color: transparent;
}
fieldset {
border: none;
outline: 1px dashed blue;
}
fieldset > legend {
float: left;
padding: 0 1em 0 0;
margin: 0;
}
fieldset .item {
overflow: hidden;
margin: 0;
padding: 0;
}
fieldset span {
display: inline-block;
width: 24%;
outline: 1px dashed red;
}
fieldset label {
float: none;
display: inline-block;
vertical-align: top;
}