HTML表格列宽:组合固定宽度和可变宽度

时间:2011-11-19 00:37:52

标签: html css html-table width

我已经制作了一张桌子:

<table style="width:1000px;">
  <tr>
    <td>aaa</td>
    <td id="space"></td>
    <td class="fixed-width">bbb</td>
    <td class="fixed-width">ccc</td>
  </tr>
</table>

我如何进行CSS以使b和c列具有固定的宽度,a列只占用所需的空间,并且空间列要扩展以填充表的其余部分?

1 个答案:

答案 0 :(得分:4)

我不是CSS大师,但似乎没有办法做到这一点似乎不对。这似乎适用于Firefox和IE7。我还没有检查过其他浏览器。

第一次收缩适合&lt; col&gt;被设置(使用CSS)为0宽度,因此它缩小以适合内容。

第二个空格&lt; col&gt; (使用CSS)设置的宽度大于表中的宽度。

最后两个固定宽度&lt; col&gt;的宽度不在&lt; col&gt;上。相反,它设置在&lt; td&gt;上。样式。这会强制列宽。

<!DOCTYPE html>
<html>
    <head>
        <title>cols</title>
        <style type="text/css">
            td.fixed-width {
                width: 100px;
                background-color:aqua
            }
            td.min-width {background-color:aqua}
            td.space {border: thick blue solid}
        </style>
    </head>
    <body style="width:1100px; font-family:sans-serif">
        <table style="width:1000px;">
            <col style="width:0"/>
            <col style="width:1000px"/>
            <col span="2" />
            <tr>
                <td class="min-width">aaa</td>
                <td class="space"></td>
                <td class="fixed-width">bbb</td>
                <td class="fixed-width">ccc</td>
            </tr>
            <tr>
                <td class="min-width">aaa asdfasdf asdfsad</td>
                <td class="space"></td>
                <td class="fixed-width">bbb fasdas</td>
                <td class="fixed-width">ccc vdafgf asdf adfa a af</td>
            </tr>
        </table>
    </body>
</html>