[英]How do I make a table scrollable
Does anyone know a vanilla way of making the body of a table scrollable using only html and css?有谁知道一种仅使用 html 和 css 使表格主体可滚动的香草方法?
The obvious solution显而易见的解决方案
tbody {
height: 200px;
overflow-y: scroll;
}
does not work.不起作用。
Wouldnt this be the obvious use of tables?这不是表格的明显用途吗?
am I doing something wrong?难道我做错了什么?
You need to declare a height first, else your table will expand to the according with of it's content.您需要先声明高度,否则您的表格将根据其内容展开。
table{
overflow-y:scroll;
height:100px;
display:block;
}
EDIT: after clarifying your problem i edited the fiddle: check out this Example or that way .编辑:澄清您的问题后,我编辑了小提琴:查看此示例或那样。 It's rather hacky and not quaranteed to work crossbrowser but might work for your case.
它相当笨拙,不能保证跨浏览器工作,但可能适用于您的情况。
You can't do that with a table.你不能用一张桌子做到这一点。 Wrap the table with a div a give it something like:
用 div 包裹桌子,给它一些类似的东西:
div.wrapper {
overflow:hidden;
overflow-y: scroll;
height: 100px; // change this to desired height
}
You can wrap the table with a parent div
and make him scrollable as scoota269 advised:您可以使用父
div
包裹表格,并按照scoota269 的建议使其可滚动:
.div_before_table {
overflow:hidden;
overflow-y: scroll;
height: 500px;
}
And to keep the table header sticky you can add a fixed
class:为了保持表头的粘性,您可以添加一个
fixed
类:
.th.fixed {
top: 0;
z-index: 2;
position: sticky;
background-color: white;
}
table { font-family: arial, sans-serif; border-collapse: collapse; width: 100%; } td, th { text-align: left; padding: 8px; } tr:nth-child(even) { background-color: #ddd; } /* The scrollable part */ .scrollable { height: 150px; overflow-y: scroll; border-bottom: 1px solid #ddd; } th { position: sticky; background-color: white; z-index: 2; top: 0; }
<div class="scrollable"> <table> <tr> <th>Company</th> <th>Contact</th> <th>Country</th> </tr> <tr> <td>Alfreds Futterkiste</td> <td>Maria Anders</td> <td>Germany</td> </tr> <tr> <td>Centro comercial Moctezuma</td> <td>Francisco Chang</td> <td>Mexico</td> </tr> <tr> <td>Centro comercial Moctezuma</td> <td>Francisco Chang</td> <td>Mexico</td> </tr> <tr> <td>Centro comercial Moctezuma</td> <td>Francisco Chang</td> <td>Mexico</td> </tr> <tr> <td>Ernst Handel</td> <td>Roland Mendel</td> <td>Austria</td> </tr> <tr> <td>Island Trading</td> <td>Helen Bennett</td> <td>UK</td> </tr> <tr> <td>Laughing Bacchus Winecellars</td> <td>Yoshi Tannamuri</td> <td>Canada</td> </tr> <tr> <td>Magazzini Alimentari Riuniti</td> <td>Giovanni Rovelli</td> <td>Italy</td> </tr> </table> </div>
Do you want somthing like this ?你想要这样的东西吗?
Pure CSS Scrollable Table with Fixed Header (1)带有固定标题的纯 CSS 可滚动表 (1)
http://anaturb.net/csstips/sheader.htm http://anaturb.net/csstips/sheader.htm
http://www.scientificpsychic.com/blogentries/html-and-css-scrolling-table-with-fixed-heading.html http://www.scientificpsychic.com/blogentries/html-and-css-scrolling-table-with-fixed-heading.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.