如何在 TD 中对齐表格?

Posted

技术标签:

【中文标题】如何在 TD 中对齐表格?【英文标题】:How to align a table within a TD? 【发布时间】:2012-11-02 00:39:34 【问题描述】:

我有一个 table,其中有 2 个 <tr> 和 2 个 <td>

<table>
    <tr>
        <td>
            <table>
                <!-- other content -->
            </table>
        </td>
        <td/>
    </tr>
    <tr>
        <td/><td/>
    </tr>
</table>

***** 在哪里,我需要插入几乎相同的表( 包含另一个表)。 但是当我调试它时,表格是左对齐的。

Live Example

我希望左上框中的表格右对齐(知识:和居中对齐)。

例如: 里面的表格是 32px 宽度,但包含 td 是 64px 宽度。

如何将表格向右对齐?

【问题讨论】:

他想知道对齐表格,而不是表格内的东西 【参考方案1】:

只想到以下几点:

<table>
    <tr>
        <td style="text-align: right"></td>
        <td/>
    </tr>
    <tr>
        <td/><td/>
    </tr>
</table>

或另一种 css 方法:

table table 
    float: right;

或内联浮点数:

<table>
    <tr>
        <td>
            <table style="float: right;">.....</table>
        </td>
        <td/>
    </tr>
    <tr>
        <td/><td/>
    </tr>
</table>

【讨论】:

float 有什么问题?应该在任何地方工作 - 这就是你所追求的:jsbin.com/evemoy/1/edit? @damien : table 是一个 blcok 元素而不是像文本或图片这样的内联元素。实际上blockelements只能放置和对齐margin属性。【参考方案2】:

如果td 只包含表格而没有其他文本或元素,那么下面的代码也应该可以工作,只有它可以正确对齐td 中的所有内容,并且在 html5 中不起作用:

<table>
    <tr>
        <td align="right">*</td>
        <td/>
    </tr>
    <tr>
        <td/><td/>
    </tr>
</table>

【讨论】:

【参考方案3】:

table 是一个块元素text-alignalign 仅适用于 inline-elements。 所以对于 block-element 你必须使用margin:

CSS:

.centered
    margin: 0 auto;


.rightaligned
    margin-right: 0;
    margin-left: auto;


.leftaligned
    margin-left: 0;
    margin-right: auto;

HTML:

<td>
    <table class="leftaligned">
        <!-- Other Content -->
    </table>
    <table class="centered">
        <!-- Other Content -->
    </table>
    <table class="rightaligned">
        <!-- Other Content -->
    </table>
</td>

这几乎适用于所有浏览器,甚至 Internet Explorer 7

【讨论】:

是的,text-align 仅适用于内联元素,但 td align 属性也适用于块元素。 Visual Studio 说:“元素 'align' 已过时或不标准。

以上是关于如何在 TD 中对齐表格?的主要内容,如果未能解决你的问题,请参考以下文章

如何在移动视图中居中对齐 td 单元格或表格?

如何在表格单元格的垂直中心对齐 CSS 箭头?

如何正确对齐表格中的图标和文本?

如何在表格单元格内垂直对齐 div?

CSS做表格,但表格内文字不知该如何靠左?! (内附程式码)

使用flexbox垂直对齐td元素中的元素[重复]