我有一个表单input
,label
跨越多行,我希望相应的复选框显示在底部(label
元素的最后一行)。
以下是我正在玩的内容
.standard-form {
width: 500px;
border: 1px solid red;
}
.standard-form .input-row {
overflow: hidden;
margin-bottom: 0.8em;
}
.standard-form label {
width: 25%;
float: left;
}
.standard-form .input-container {
width: 70%;
float: right;
}
.standard-form .checkbox .input-container {
display: table-cell;
height: 100%;
vertical-align: text-bottom;
}
<form class="standard-form">
<div class="input-row checkbox" id="permission">
<label for="input-permission">
Do I hereby grant you permission to do whatever tasks are neccessary to achieve an ideal outcome? </label>
<div class="input-container">
<input type="checkbox" id="input-permission" name="permission" value="true" /> </div>
</div>
</form>
它也在JSbin上线。
有没有办法做到这一点?我注意到div.input-container
没有扩展,这是CSS的旧多列问题。
我以为我可以通过display: table-cell
和vertical-align: bottom
来解决这个问题,但我还没有做到。我不介意IE6 / 7无法正确呈现它。
我还尝试使用position: relative;
和孩子position: absolute; bottom: 0;
的组合,除此之外我需要指定一个我无法保证的高度,它将是左侧标签的高度。
答案 0 :(得分:3)
查看我的行动更改:http://jsbin.com/ocovu/2/edit
以下是相关声明:
.standard-form .input-row {
overflow: hidden;
margin-bottom: 0.8em;
position: relative;
}
.standard-form .checkbox .input-container {
position: absolute;
bottom:-2px;
left:25%;
}
答案 1 :(得分:0)
尝试display: block
?