是否有跨浏览器的CSS/JavaScript技术来显示长HTML表格,使列标题保持固定在屏幕上,不要与表格主体一起滚动.想想Microsoft Excel中的"冻结窗格"效果.
我希望能够滚动表格的内容,但始终能够看到顶部的列标题.
我有一个解决方案,我可以通过使用次要的jQuery和CSS创建可固定页眉/页脚的可滚动表 - 但我正在寻找一种方法,使这个跨CSS浏览器兼容的CSS解决方案.
需要明确的是,我所寻求要做的就是使用只有一个table标签(和它是有效的子标签,colgroup,col,thead,tbody,tfoot,tr,th,td),而是采用了一套将符合下列条件的CSS规则:
这个代码示例:http://jsfiddle.net/TroyAlford/SNKfd/显示了我当前的方法.大多数JS只是用随机值填充表,但最后一部分是驱动左/右可滚动性的因素.
$tbody.bind('scroll', function(ev) {
var $css = { 'left': -ev.target.scrollLeft };
$thead.css($css);
$tfoot.css($css);
});
Run Code Online (Sandbox Code Playgroud)
注意:提供的示例在IE中无法正确呈现,并且需要jQuery来提供水平滚动.无论如何我不关心水平滚动,所以如果解决方案不这样做就没问题.
我有一个HTML5表,我想添加一个滚动条.我希望表格显示十行,然后用户可以向下滚动以查看其他歌曲.如何添加滚动条?
这是我在HTML5中的表的代码:
<table id="my_table" table border="5">
<tr>
<th>URL</th>
</tr>
<tr>
<td>http://www.youtube.com/embed/evuSpI2Genw</td>
</tr>
<tr>
<td>http://www.youtube.com/embed/evuSpI2Genw</td>
</tr>
</table>
Run Code Online (Sandbox Code Playgroud)
这是我的CSS代码:
#my_table {
border-radius: 20px;
background-color: transparent;
color: black;
width: 500px;
text-align: center;
}
Run Code Online (Sandbox Code Playgroud) 在这篇文章之后,我有一个表格,我正在尝试获取粘性标题。除了我的表格样式的顶部和底部带有边框的标题。
我不明白的部分是顶部/底部边框应用于th与表格的其余部分一起滚动而不是留在“卡住”标题单元格中。有什么可以做的吗?
可以在此处找到工作示例:https : //codepen.io/smlombardi/pen/MNKqQY?editors=1100#0
let string = ''
console.log("oj")
for(let i=0; i<100; i++) {
string += `
<tr>
<td>Malcolm Reynolds</td>
<td>Captain</td>
<td>9035749867</td>
<td>mreynolds</td>
</tr>
`
}
document.getElementsByTagName('tbody')[0].innerHTML += stringRun Code Online (Sandbox Code Playgroud)
.table-sticky-container {
height: 200px;
overflow-y: scroll;
border-top: 1px solid green;
border-bottom: 1px solid green;
}
.table-sticky {
th {
position: sticky;
top: 0;
z-index: 2;
border-top: 1px solid red !important;
border-bottom: 2px solid red !important;
}
}Run Code Online (Sandbox Code Playgroud)
<div class="table-sticky-container">
<table class="table table-sticky">
<thead class="thead-light">
<tr> …Run Code Online (Sandbox Code Playgroud)