【问题标题】:Table with fixed cell width, but auto table width具有固定单元格宽度的表格,但自动表格宽度
【发布时间】:2014-04-17 02:07:54
【问题描述】:

如果我有一个带有display: table; width: 100%; 的常规元素,则该元素会增长到超出给定宽度以容纳任意数量的列。我需要这种行为和相等的列宽。

我找到的所有解决方案要么是 JavaScript(通常是 jQuery),要么是使用 table-layout: fixed,它需要表格的固定宽度(例如,100%),但表格包含大量数据,甚至没有 1000px可以容纳这么多信息。

如何使用 CSS 重现此行为?

【问题讨论】:

  • 如果你的表格不能打印在
  • 不,这是科学信息,这是设计。可以有 1 到 200 列数据,它们都需要在同一个表中。
  • 等宽​​应该是多少?
  • 如果您想要一个相等的宽度,即容纳任何单元格内容的最小宽度(不换行),这是我对问题含义的最佳猜测,那么您显然需要(简单的)JavaScript。

标签: css css-tables


【解决方案1】:

更新 那么有这样的事情吗? http://jsfiddle.net/Jax5z/1/


根据您需要的浏览器支持以及显示的信息,如果表格单元格中的文本太长,您可以截断它们,这仍然允许表格拉伸并填充页面。

http://jsfiddle.net/Jax5z/

table {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
    cursor: crosshair;
    background: #eee;
}

td {
    border:1px solid black;
    padding: 10px;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-transition: all .1s ease-out;
}

【讨论】:

  • 感谢您的努力,很明显您在我对问题添加评论之前就开始写作了。但是有数百列。我需要支持滚动。
  • 这样,但列的宽度应该相等。
  • 您可以在 元素上设置宽度,但是如果表格单元格的内容大于您设置的宽度,则表格单元格将始终展开。如果不做我最初的事情,就没有办法解决这个问题。
猜你喜欢
  • 1970-01-01
  • 2011-05-10
  • 2012-09-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-01-23
相关资源
最近更新 更多