Javascript表头不粘

Javascript表头不粘,javascript,html,Javascript,Html,我试图根据W3S上的解决方案实现一个粘性表头: 然而,我的表格标题仍然不会在滚动过标题时保持不变。控制台日志给出了粘性,窗口.pageYOffset,标题.offsetHeight的预期值。 我错过什么了吗 我的代码摘要如下: /*...*/ #我的桌子{ 浮动:左; 宽度:75%; 背景色:#fff; 填充:6px; 左边距:175px; } #myTable th{ 光标:指针; 位置:粘性; 排名:0; } #myTable th:悬停{ 背景色:#66991c; 颜色:白色; } #

我试图根据W3S上的解决方案实现一个粘性表头:

然而,我的表格标题仍然不会在滚动过标题时保持不变。控制台日志给出了
粘性
窗口.pageYOffset
标题.offsetHeight的预期值。
我错过什么了吗

我的代码摘要如下:


/*...*/
#我的桌子{
浮动:左;
宽度:75%;
背景色:#fff;
填充:6px;
左边距:175px;
}
#myTable th{
光标:指针;
位置:粘性;
排名:0;
}
#myTable th:悬停{
背景色:#66991c;
颜色:白色;
}
#myTable tr:n个孩子(偶数){
背景色:#eee;
}
#myTable tr:n个子项(奇数){
背景色:#fff;
}
#表链接{
显示:块;
文字装饰:无;
背景色:黑色;
颜色:白色;
边界半径:5px;
}
#表链接a{
显示:块;
文字装饰:无;
背景色:黑色;
颜色:白色;
边界半径:5px;
}
#表链接a:悬停{
显示:块;
文字装饰:无;
背景色:#66991c;
颜色:白色;
边界半径:5px;
}
.粘的{
位置:固定;
排名:0;
宽度:100%;
}
/*...*/
...
...
...
...
...
window.onscroll=function(){myFunction()};
var header=document.getElementById(“myHeader”);
var sticky=header.offsetTop;
函数myFunction(){
如果(window.pageYOffset>sticky){
header.style.paddingTop=header.offsetHeight+'px';
header.classList.add(“粘性”);
}否则{
header.style.paddingTop=0;
header.classList.remove(“粘性”);
}
}

在不使用Javascript的情况下使用
位置:sticky

.sticky {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
}

您当前的代码在这里似乎运行良好:请发布所有CSS。我认为您没有从示例样式表中复制所有必需的样式。您需要从示例中的css复制的不仅仅是
.sticky
。1。不要使用W32。你的HTML无效,
不能直接包含div。对我来说,firefox将
移到表外,但将
留在表内,这意味着你看不到代码是否做了它应该做的事情3。问题是:仍然不起作用,我尝试使th position:sticky,并删除了表中的所有javascript元素…现在它开始工作了,但是有没有办法将其包含在sticky元素中?或者我必须解析为javascript吗?在进行此操作之前,请确保检查浏览器支持,即使这很好。不适用于我(适用于Chrome、Firefox和IE)。将“位置”修改器放在AD th下也不起作用:(您应该将div从表标记中移除。Sticky元素只有在其父容器的底部边缘不接触Sticky元素的底部边缘时才会被粘贴,否则它将被滚动。Nvm,我将html注释替换为css注释,现在一切正常