1

我无法修复表格的标题,这是我的问题:

我使用了这篇文章中的相同代码: 当用户使用 jQuery 将表头滚动到视图之外时,表头保持固定在顶部

它几乎可以工作,但问题是当我向下滚动时标题的宽度发生了变化。

我想知道我做错了什么。我尝试了以下代码来修复宽度,但不起作用。

$("#header-fixed td").each(function(index){
var index2 = index;
$(this).width(function(index2){
    return $("#table-1 td").eq(index).width();
});
});

这是链接:http: //vvb.me/test.html

4

1 回答 1

1

表格单元格的宽度不仅取决于该特定表格单元格的内容,还取决于与其相同的垂直列中的其他单元格。这是因为表格形成块,所以列的宽度必须对齐。

这里发生的情况是,附加单元格的计算宽度与thead为分离的固定thead单元格计算的宽度不同。

在附件thead中,单元格的宽度主要由以下数据确定。在第二种情况下,它没有附加到tbody,宽度完全由标题tds 决定。

一种解决方案是在两者中指定单元格的宽度theads。例如,指定,

<td style='...; width: 50px;'>

在你所有的thead细胞上会使它们相等。

您还可以使用 javascript 来确定每个附加thead单元格的宽度,并将底部thead单元格设置为与其对应的单元格相等。可以使用 Javascript/Jquery 计算 DOM 元素的尺寸。查看类似这样的答案,了解如何做到这一点的方法。

于 2013-04-10T16:49:17.810 回答