css - 如何使用 CSS 格式化表格,使表格位于屏幕内,单元格使用尽可能多和必要的宽度?

标签 css formatting width scrollbar css-tables

如何使用 CSS 格式化表格:

  1. 表格在浏览器水平滚动条不显示的屏幕内,用户无需水平滚动即可看到表格右侧;

  2. 单元格使用必要的宽度,包含只有“1”、“21”等数字的单元格的列不会使用比显示所有数字所需的宽度大得多的宽度该列中的单元格,比如 4 个字符宽度,即使用比它更多的意味着浪费水平空间;

  3. 对于包含非常宽的单元格的列,或者更准确地说,如果允许的话,内容将占用较大的宽度,请使用尽可能多的宽度,以便不违反 1) 和 2),并且如果无法显示单元格,让水平滚动条显示该单元格。

对于 Windows 和 Mac OS X 上最新的 Firefox 和 Google chrome,这在 CSS 中可行吗?

最佳答案

我的 first attempt基于 CSS: Constrain a table with long cell contents to page width? ,使用嵌套的 divposition: relative 然后是 position: absolute。不考虑绝对定位的 div 的大小,这对表格的宽度有利但对行的高度不利:它不会扩展以包含滚动条。

然后我tried table-layout: fixed 按照 How can I set a <td> width to visually truncate its displayed contents? 中的建议.这也实现了忽略单元格内容大小的目标,但这样做使得我们无法像以前那样指定最后一列应占用所有剩余宽度。 p>

另请参阅:Why does overflow:hidden not work in a <td>? .

关于css - 如何使用 CSS 格式化表格,使表格位于屏幕内,单元格使用尽可能多和必要的宽度?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11974646/

相关文章:

datetime - Matplotlib 在 x 轴刻度上显示多余的微秒精度

css - 1px 边框搞乱了 100% 宽度的分页

html - 嵌套 CSS 表格 - 嵌套表格宽度是第一列的宽度

css - 扩展所选文本的背景色矩形

jquery - highmap 数据点点击事件在移动设备(触摸屏)上缩放后中断

javascript - jquery 切换 id 而不是类?

html - 使用 <object> 元素在 pdf 预览中显示的元素在 Chrome 中不是交互式的

javascript - 选择下拉列表中的日期格式 AngularJS

python - 与字符串格式对齐

android - 根据屏幕宽度制作 View 的宽度