【发布时间】:2012-08-03 00:27:58
【问题描述】:
我有一些 HTML 并排显示一个文本输入和 2 个复选框。 HTML 是由工具生成的,因此我无法更改 HTML 的构建方式,我只能使用 CSS 对其应用样式。我的简化 HTML 和 CSS 是:
<html>
<head>
<style type="text/css">
td {
padding: 0;
}
fieldset {
display: inline;
padding: 0;
margin: 0
}
input[type="text"] {
margin: 0;
padding: 0;
}
table.checkboxs {
border-collapse:collapse;
}
table.checkboxs td {
border: none;
margin: 0;
padding: 0;
}
</style>
</head>
<body>
<input type="text" id="item1" value="" />
<fieldset>
<table summary="" class="checkboxs" border-collapse="">
<tr>
<td><input type="checkbox" id="chkbox_0" name="chkbox" value="1" /><label for="chkbox_0">One</label></td>
<td><input type="checkbox" id="chkbox_1" name="chkbox" value="2" /><label for="chkbox_1">Two</label></td>
</tr>
</table>
</fieldset>
</body>
</html>
最后会出现比文本项更高的复选框,如下所示:
我希望它们像这样排列在一起:
这似乎很简单,但我不知道如何实现它。如果您删除文本输入或字段集,则剩余元素占用最小垂直空间,只有当它们在一起时,文本输入才会被推下页面。
请务必指出HTML中的任何不足之处,但正如我所说,这真的不在我的控制范围内,我只能使用CSS来影响布局。
【问题讨论】:
-
在所有文本框或字段集上使用
position: relative和top: [some number, can be negative]px
标签: html css checkbox alignment