趣百科

html/css当列数太多时,如何让table出现滚动条

编辑:Simone 2025-03-17 10:07:25 548 阅读

html/css当列数太多时,如何让table出现滚动条

很多时候我们的表格的列数会很多,然后由于没有横向滚动条,然后浏览器窗体宽度又只有这么大,从而导致每个单元格的数据只能向下挤压。或者,超出宽度的列数据直接消失,又或者整个窗体出现了滚动条,界面显得非常难看。。。

所以我们必须想一个办法让table在数据列太多时显示横向滚动条!

先来看下一个初始的table代码:

11111111111111111111122222222222222222222233333333333333333333344444444444444444444455555555555555555555566666666666666666666677777777777777777777771111111111111111111112222222222222222222223333333333333333333334444444444444444444445555555555555555555556666666666666666666667777777777777777777777888888888888888888888899999999999999999999991111111111111111111111

运行示意图如下所示,就显示了一个只含有一行但是含有很多列的table,这时由于

那么这个时候我们又该如何修改代码让这个table显示出滚动条呢?(至少看起来是)

其实并不复杂,首先我们在这个table的外面加一个div把table包含起来,如下图所示

然后我们在给这个div设置样式【overflow:scroll;】

注意:

这个属性表示让div出现滚动条.如果只想出现水平滚动条或者只想出现垂直滚动条的话,请用overflow-x(水平)与overflow-y(垂直).

运行结果如下,这个table出出现了滚动条,并且窗体的导航条没有在出现。

注意:

1. 如果你在你的项目中这样操作了后却没出现滚动条,但是偏偏又能滚动!

2. 那估计是你的div没有具体的宽度与高度,从而被里面的table给撑开了,这样来给table有多宽有多高,你的div就有多宽多高,自然就不会出现滚动条,

3. 所以你的div设置下具体的宽高即可解决这个问题

总结下原理:

就像我们最开始构建了一个很多列的table,然后浏览器窗体(body)出现了滚动条一样,这是因为table的父元素就是body.

而现在我们把这个body父元素换为了我们自己定义的div而已,这就是我的实现原理。

当出现了滚动条后实际上我们还可以通过控制这个div的样式来控制这个界面的展现。

我举个例子,比如我设置了这个div的宽度为500px,如下图所示,这样看起来是不是好多了,当然除此之外我们还可以设置各种的样式,这个就看大家自己的需求了

版权声明:本站【趣百科】文章素材来源于网络或者用户投稿,未经许可不得用于商用,如转载保留本文链接:https://www.qubaik.com/answer/157817.html

相关推荐