使用 position: sticky 和 left: 0 可固定表格首列;2. 配合 table-layout: fixed 与容器 overflow-x: auto,确保布局稳定并支持横向滚动,首列始终可见,兼容性好,实现简单。
在表格中固定首列,同时允许其他列横向滚动,是常见且实用的布局需求。使用 CSS 的 position: sticky 可以轻松实现这一效果,无需 JavaScript 或复杂结构。
要让表格的首列固定在左侧,关键在于为该列的单元格设置:
一个标准的表格结构即可:
| 姓名 | 年龄 | 城市 | 职业 |
|---|---|---|---|
| 张三 | 28 | 北京 | 工程师 |
添加以下样式即可实现首列固定:
table {注意:table-layout: fixed 能确保列宽均匀或按设定分配,避免 sticky 元素因自动布局错位。
表格必须能横向滚动,sticky 才有意义。将 table 包裹在容器中并设置:
.table-container {这样当内容超出容器宽度时,用户可以左右滑动查看数据,而首列始终保持可见。
基本上就这些。只需给首列加 position: sticky 和 left: 0,再确保表格可滚动,就能实现流畅的固定列效果。兼容性良好,现代浏览器均支持。不复杂但容易忽略细节。