【问题标题】:Make "Greedy" Table Cell?制作“贪婪”表格单元格?
【发布时间】:2014-03-27 03:10:42
【问题描述】:

我在表格中有一行,其中有 3 个单元格,其值为 A、B 和 C,表格是屏幕的整个宽度,这对于所有 3 个单元格来说绰绰有余。现在,当他们显示,所有单元格都占了房间的 1/3,但这不是我想要的。我希望第二个和第三个单元格是它们的“正确”大小,并且第一个单元格占据差异。我不能只设置它们的宽度,因为它们是动态大小的。我该怎么做?

【问题讨论】:

  • 你的意思是这三个的宽度是动态设置的?还是只是 B 和 C?,如果你离开 A 没有宽度,它会按照你的要求做。
  • @jackJoe - B 和 C 必须是其内容的宽度。剩下的空间,A 应该占据。

标签: html css html-table


【解决方案1】:

只需将表格的宽度设置为 100%,将 A 的宽度设置为 100%,将 B 和 C 的宽度设置为自动。 经过测试和工作

<table border="1px" width="100%">
    <tr>
        <td width="100%">A</td>
        <td width="auto">BB</td>
        <td width="auto">CCC</td>
    </tr>
</table>

【讨论】:

  • auto 是默认宽度,因此只需要指定相关单元格的 100% 宽度。 (为我工作。)
【解决方案2】:

以像素为单位编码 AC,并赋予 B 100% 的宽度

【讨论】:

  • Downvote:像素值将被忽略。这仅适用于您将一列的宽度设置为 100%。这将与 Deep Frozen 的答案相同。
【解决方案3】:

Rune 对 Pistos 评论的回答让我很接近。最后一步是将 style="white-space:nowrap" 添加到非贪婪列,给出:

<table border="1px" width="100%">
    <tr>
        <td width="100%">A wide column</td>
        <td style="white-space:nowrap">Compact column 1</td>
        <td style="white-space:nowrap">Another compact column</td>
    </tr>
</table>

在 Firefox 25 中为我工作。

【讨论】:

    【解决方案4】:

    我尝试了 Diodeus 和 Rune 的方法,但它不适用于我的示例。我最终在单元格 B 和 C 上进行了合并,因为我真的找不到任何东西。感谢您的帮助。

    【讨论】:

    • 投反对票:“我没有找到解决方案”不是公认的解决方案。
    【解决方案5】:

    试试,

    <table border="1px" width="100%">
        <tr>
            <td width="100%" height="100" style="background:#ff0000; display:block">A</td>
            <td width="100%" height="100" style="background:#00ff00; display:block">BB</td>
            <td width="100%" height="100" style="background:#ff00ff; display:block">CCC</td>
        </tr>
    </table>
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-09
    • 1970-01-01
    • 2013-02-04
    相关资源
    最近更新 更多