javascript - 我如何创建一个带有滚动的 html 表格

标签 javascript jquery html css

我有一个很大的 html 表(超过 3000 个元素),但显然我不想一次显示所有内容。将显示部分表格,但大部分表格都将包含在一个具有滚动功能的小框中。我想要一张类似于本网站使用的表格:stackoverflow search table .我尝试做类似我的代码不起作用的事情:这是一个示例表:

.table {
  height: 150px;
  overflow-y: scroll;
  overflow-x: hidden;
}
<table id="myTable" class="table">
  <tr class="header">
    <th style="width:60%;">Name</th>
    <th style="width:40%;">Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Berglunds snabbkop</td>
    <td>Sweden</td>
  </tr>
  <tr>
    <td>Island Trading</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>Koniglich Essen</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Germany</td>
  </tr>
</table>

滚动条永远不会出现在表格的一侧。我对 HTML 比较陌生

最佳答案

<table>元素不遵守溢出属性。通过将表设置为阻塞来强制溢出属性:

.table {
  display: block;
  height: 150px;
  overflow-y: scroll;
  overflow-x: hidden;
}
<table id="myTable" class="table">
  <tr class="header">
    <th style="width:60%;">Name</th>
    <th style="width:40%;">Country</th>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Berglunds snabbkop</td>
    <td>Sweden</td>
  </tr>
  <tr>
    <td>Island Trading</td>
    <td>UK</td>
  </tr>
  <tr>
    <td>Koniglich Essen</td>
    <td>Germany</td>
  </tr>
  <tr>
    <td>Alfreds Futterkiste</td>
    <td>Germany</td>
  </tr>
</table>

有了那么大的 table ,您将受益于 https://datatables.net/ 的额外服务可以带来:)

关于javascript - 我如何创建一个带有滚动的 html 表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43215688/

相关文章:

javascript - 使用 raphael 的 SVG 文件未渲染

javascript - JQuery - 在本地工作,但 $ 未定义,但仅在部署的站点上定义

html - 当空间可用时将元素一个接一个地添加到另一个 Flexbox

javascript - 我可以在 div ID 中使用 float 吗?

javascript - 在 Angular-UI-Bootstrap Datepicker 中的设置日期(date=today)显示自定义字符串 ("Today")?

javascript - 如何使用 ng-options 抑制值属性中的变量类型?

javascript - jQuery 简单克隆插件 - 更改输入名称格式

javascript - 如何为页面上的所有图像设置错误图像?

具有相同ID的多个按钮事件的JQuery函数

javascript - 为什么这个素数检查器有效?