如果 CSS 不足以处理所有浏览器中的此问题,则可能需要 JavaScript 解决方案。您可以使用一个小脚本来手动控制标题的位置
window.addEventListener('scroll', function() {
const tableHeader = document.querySelector('thead');
const tableHeaderOffset = tableHeader.getBoundingClientRect().top;
if (tableHeaderOffset <= 0) {
tableHeader.style.position = 'fixed';
tableHeader.style.top = '0';
tableHeader.style.zIndex = '100';
} else {
tableHeader.style.position = 'sticky';
tableHeader.style.top = '0';
}
});