【问题标题】:position:fixed(css) behaving differently in different browserposition:fixed(css) 在不同的浏览器中表现不同
【发布时间】:2016-11-27 07:46:13
【问题描述】:

我正在尝试冻结表头.. 为了达到相同的效果,我编写了this 代码.. 它工作正常,但表头似乎在颤抖。

所以我改了一点代码,现在输出已经很好了,你可以看到它here
但问题是,修改后的代码在 Mozilla 中有效,但在 IE 中无效。
我尝试了多种方法,但无法在 IE 中获得确切的行为,因为它在第二小提琴中。
在第二个小提琴中,在准备好的辅助文档中,我已经用这个更改了现有代码 -

 var originalHeaderRow = $("tr:eq(1)", this)
        originalHeaderRow.before(originalHeaderRow.clone());
        var clonedHeaderRow = $("tr:eq(1)", this)
        clonedHeaderRow.addClass("tableFloatingHeader");
        clonedHeaderRow.css("position", "fixed");
        clonedHeaderRow.css("top", $("tr:eq(1)").css("top"));
        var left = $("tr:eq(1)").offset().left;
        clonedHeaderRow.css("left", left);  

有什么建议或提示我哪里出错了吗?

【问题讨论】:

    标签: javascript jquery css internet-explorer html-table


    【解决方案1】:

    不是把floatingHeaderRow放到table里,而是放到body里固定位置。这样它就不必一直计算新的位置。

    类似的东西,但并不完美:http://jsfiddle.net/NtBYa/2/

    【讨论】:

    • 你说的是表体还是页体
    • 页面正文$('body').before(originalHeaderRow.clone());
    • 使用这种方法,即使是我的原始标题在页面加载时也会淡出
    • 我刚刚编辑了 jsfiddle 链接,应该让它更清晰一些。
    • +1 为你的努力,我明白你的话,但问题是我的身体中有很多 div 部分,然后我有 table.so 如果我将它附加到身体上,它会被附加在那些 div 之前并在显示它时它会坐在那些不在桌子上的 div 之上..希望你能明白我在说什么
    猜你喜欢
    • 2011-12-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-10-26
    • 2013-06-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多