使用CSS将两列表居中

时间:2013-02-20 20:57:09

标签: html css html-table centering

我在网站上有以下页面:

Screenshot

我通过在它们周围添加两列具有已定义宽度的列来居中这两列:

    <table class="form">
    <tbody>
    <tr>
    <td style="width:20%;"></td>
    <th>User ID</th>
    <td><input type="text" name="userid" id="userid" class="medium" value="" /></td>
    <td style="width:20%;"></td>
    </tr>
    <tr>
    <td></td>
    <th>Password</th>
    <td><input type="password" name="password" id="password" class="medium" /></td>
    <td></td>
    </tr>
    <tr>
    <td></td>
    <th><label for="remember">Remember my user ID</label></th>
    <td><input type="checkbox" name="remember" id="remember" value="true" /></td>
    <td></td>
    </tr>
    </tbody>
    <tfoot>
    <tr>
    <td colspan="3"><a href="forgot/">Forgot your user ID or password?</a></td>
    <td><input type="submit" name="submit" id="submit" value="Login" /></td>
    </tr>
    </tfoot>
    </table>

如果没有宽度为20%的两侧空柱,有没有办法实现这一目标?

3 个答案:

答案 0 :(得分:5)

<style>
table.form {
    width: 400px; /* or however wide you want it */
    margin: 0 auto;
}
</style>

然后,您可以根据需要将提交按钮放在自己的元素中,或者您可以将其保留在表中以获得一致的宽度。

答案 1 :(得分:5)

虽然你可以找到一个解决方案来解决表格,因为有人已经解决了,我建议你不要使用它们,表格总是有问题。您可以使用不同的html元素(如div)完成此操作。下次考虑一下:))

答案 2 :(得分:0)

定义要居中的元素的宽度(使用像素,em-s,百分比......),并设置margin-left: auto margin-right: auto会有所帮助