我有一个具有短标题但长小区(table)的生成播放代码。 是否可以使列宽到最小可能的标题宽度?

示例:

<table>
    <tr>
        <th>Name</th>
        <th>phone</th>
    </tr>
    <tr>
        <td>Santa</td>
        <td>20938570987098709870298349082456</td>
    </tr>
</table>
.

所以,列“手机”应显示“20 .....”

是可能的吗?

有帮助吗?

解决方案

如果需要精确宽度,并且您不使用单座字体,请更加艰难。

$("th").each(function () {
   var chars = $(this).text().length;
   $("td").eq($(this).index()).each(function () {
      if ($(this).text().length > chars) {
         $(this).text($(this).text().substring(0, chars) + '...');
      }
   });
});
.

未测试或优化;只是一个概念验证。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top