【发布时间】:2012-10-22 02:20:07
【问题描述】:
问题
当使用sScrollX、sScrollXInner 和/或sScrollY 来实现一个固定的标题表并且其内部内容滚动时,该表的标题与Chrome 和IE 中的正文的其余部分不对齐.而 Firefox 则可以完美地显示它们。
据我所知,使用 1.9.4 版本时,仅当存在大量宽度波动的数据,并且非常长/不可包装的单词与小单词组合在同一列中时,才会出现此问题。此外,有问题的表格需要相当宽。
所有这些因素都在这个fiddle中得到了展示:
输出
建议的解决方案
这些解决方案以前曾提出过,但对我的实施没有影响。由于其中一些建议,我设置了一个干净的普通香草演示,因为我想确保没有其他代码对这种效果做出贡献。
- 关闭/删除我所有的 CSS
setTimeout( function () { oTable.fnAdjustColumnSizing(); }, 10 );- 按此顺序调用
oTable.fnFilter( "x",0 )和oTable.fnFilter( "",0 ) "sScrollXInner": "100%"- 摆脱所有宽度
对于未对齐的标题,我发现的唯一解决方案是删除 sScrollX 和 sScrollY,但这不能算作解决方案,因为您失去了固定的标题/内部内容滚动功能。很遗憾,这是一个临时的 hack,而不是修复!
注意
编辑/播放最新的fiddle。
我尝试了各种组合,这些组合可以通过使用链接http://jsfiddle.net/pratik136/etL73/#REV# where 1 <= #REV# <= 12 在小提琴的修订历史中观察到
历史
堆栈O
之前有人问过这个问题:jQuery Datatables Header Misaligned With Vertical Scrolling
但重要的区别在于,该问题的 OP 提到,如果删除了所有 CSS,他们能够解决问题,这在我的情况下是不正确的,并且我尝试了一些排列,因此认为这个问题值得重新发布。
外部
此问题也已在 DataTables 论坛上标记:
- http://datatables.net/forums/discussion/7395/sscrolly-and-sscrollx-broken/p1
- http://datatables.net/forums/discussion/7778/vertical-scrolling-messes-up-column-header-alignment#Item_1
- http://datatables.net/forums/discussion/3835/width-columns-problem-in-chrome-safari/p1
- 我的错误报告:http://datatables.net/forums/discussion/12491/datatables-header-alignment-issue-refresh#Item_1
这个问题把我逼疯了!请贡献你的想法!
【问题讨论】:
-
对我来说,你的小提琴在 Chrome 中很好,但在 Firefox 中不对齐。
标签: jquery datatables