适合其内容的宽度

时间:2015-03-26 14:22:23

标签: css html-table

我有一个HTML表格,我想将第一列的宽度设置为该列单元格中最大项目的宽度。

当我将宽度设置为50px时,它看起来很好: HTML table 50px width

如果我将宽度设置为“自动”,则会过度扩展: HTML table auto width

为什么会这样做?我该如何解决这个问题?

这是我的代码:

<html>
    <body>
        <style type="text/css">
            .tg  {border-collapse:collapse;border-spacing:0;border-color:#ccc;}
            .tg td{font-family:Calibri, sans-serif;font-size:14px;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:#ccc;color:#333;background-color:#fff;}
            .tg th{font-family:Calibri, sans-serif;font-size:14px;font-weight:normal;padding:10px 5px;border-style:solid;border-width:1px;overflow:hidden;word-break:normal;border-color:#ccc;color:#333;background-color:#f0f0f0;}
            .tg .tg-j4kc{background-color:#efefef;text-align:center}
            .tg .tg-ud5c{background-color:#efefef;text-align:right;width:auto}
            p.italic{font-style: italic}
        </style>

        <font face="Calibri, Arial, Sans-Serif" font size="3">
            The script<br><br>

            <p class="italic">' + $ScriptName + '</p>

            has sent a notification. See below for details...
        </font><br><br>

        <table class="tg" style='width:700px'>
            <tr>
                <th class="tg-j4kc" colspan="2">Script</th>
            </tr>
            <tr>
                <td class="tg-ud5c">Path</td>
                <td>"' + $ScriptPath + '"</td>
            </tr>
            <tr>
                <td class="tg-ud5c">Server</td>
                <td>' + $Server + '</td>
            </tr>
            <tr>
                <td class="tg-ud5c">Name</td>
                <td>' + $ScriptName + '</td>
            </tr>
        </table>

        <font face="Calibri, Arial, Sans-Serif" font size="3">
            <br><u>Notification</u>
            <br><br>' + $NotificationContent + '
        </font>
    </body>
</html>

修改
当我从style='width:700px'参数中删除<table>时似乎有效。

我想为表格设置一个固定的宽度,因为可能会发生这些表格中不止一个并且我不希望每个表格都有不同的宽度。

2 个答案:

答案 0 :(得分:4)

将您的css更改为: -

tg .tg-ud5c {
    background-color:#efefef;
    text-align:right;
    width:1%;
    white-space: nowrap;
}

更新了小提琴:http://jsfiddle.net/Lk6bf5mm/1/

答案 1 :(得分:0)

根据是否作为响应表,您可以考虑使用列的max-width或min-width属性,作为之前建议的另一种替代方法。