【问题标题】:HTML table: keep the same width for columnsHTML表格:保持列的宽度相同
【发布时间】:2010-10-08 21:09:53
【问题描述】:

我有一张包含几组列的表格。该表比我的页面大,所以我有一个控件来显示/隐藏其中一些组以适应页面。初始表看起来不错:组内所有列的宽度大致相同。但是当我隐藏一个组时,列的宽度不再相同,而且看起来很糟糕。

示例:http://www.reviews-web-hosting.com/companies/apollohosting.html(断开的链接)

到目前为止,该表看起来还不错。点击>>。 “Ecommerce Pro”下的第一列比“Ecommerce Pro”下的其他列宽得多,看起来很奇怪。点击

我尝试过使用

<colgroup><col /><col span="5" />...

但没有运气。如果我将 col 设置为 style="display: none",则仍会显示列集。

有任何 HTML/CSS 提示可以使组内的列保持相同宽度吗?

编辑:

  • 要隐藏一列,我必须使用可见性:折叠
  • 现在似乎调整大小很好,我不知道为什么

【问题讨论】:

  • 身份验证对话框阻止我使用该网站。
  • 它只会阻止我看到一些图像。
  • 这是一个错误的 .htaccess,它要求进行身份验证以获取 /sites 下的图像。今晚我会修好它。我仍在努力建设网站。

标签: html css


【解决方案1】:

如果您在表格上设置样式table-layout: fixed;,您可以覆盖浏览器的自动列大小调整。然后浏览器将根据表格第一行中单元格的宽度设置列宽。把你的&lt;thead&gt;改成&lt;caption&gt;,去掉里面的&lt;td&gt;,然后给&lt;tbody&gt;中的单元格设置固定宽度。

【讨论】:

  • 添加table-layout: fixed; 的单一修改为我解决了同样的问题(FFox 11)。
  • 如果需要设置单元格宽度,使用固定表格布局有什么意义?
【解决方案2】:

将此样式赋予 td: width: 1%;

【讨论】:

  • 列数未知,如果表格本身具有固定宽度或width: 100%,这实际上可以解决问题
  • 为什么会这样?当我想让左列具有固定宽度而所有其他列具有相同宽度时,我可以使用这个技巧吗?
【解决方案3】:

在您的情况下,因为您只显示 3 列:

Name    Value       Business
  or
Name    Business    Ecommerce Pro

为什么不将所有 3 设置为 33.3% 的宽度。由于一次只显示 3 个,浏览器应该将它们都呈现为相似的宽度。

【讨论】:

  • 当我隐藏/显示不同的列时,单元格的数量可以改变
【解决方案4】:

好吧,你为什么不(摆脱侧边栏并)挤压表格,使其没有显示/隐藏效果?现在我觉得很奇怪。表太健壮了。
否则,我认为斯昆利夫的建议应该这样做。或者,如果您愿意,您可以设置表格的确切宽度,并为表格单元格设置百分比或像素宽度。

【讨论】:

  • 有些表格太大,没有侧栏的事件。
猜你喜欢
  • 2018-02-25
  • 1970-01-01
  • 1970-01-01
  • 2014-01-19
  • 2012-11-10
  • 2011-08-20
  • 2019-05-20
  • 2019-11-16
  • 1970-01-01
相关资源
最近更新 更多