用CSS强制高度

时间:2012-10-30 21:29:47

标签: css html-table

我需要控制一个表行的高度 - 我已经尝试设置单元格的高度,但是我正在撞墙。 See demo

tr.fixedRow,
tr.fixedRow td.fixedCell {
     height: 50px;
     overflow: hidden; }

我知道我可以将display的某些内容更改为block,但这样做通常会以糟糕的方式弄乱桌子 - 我正在处理一个相当复杂的表格,与之交互附近的其他表格需要排列像素完美,所以一般来说,更改display,然后尝试再次使用CSS看起来像一个表格对我来说不是一个好的解决方案,因为它不匹配起来。我需要它来保持一张桌子。

我也想避免这样做:

<td><div>
   ... cell content...
</div></td>

这似乎很糟糕。当然,只有一个CSS解决方案可以解决这么简单的问题吗?

1 个答案:

答案 0 :(得分:14)

您正在尝试通过依赖于css属性来实现此目的,该属性不会按预期方式工作:CSS溢出适用于块级元素,<td>不是(css:{{1 }})。

请参阅CSS Overflow on MDN

出于这个原因,我相信除非你在display: table-cell;上设置display: block;,否则你将无法达到固定高度 - 并且你说你不能,因为它会打破表格对齐,因此,在我看来,唯一明智的选择是:

<td>

<td><span>...</span></td> 设置为<span>(除了display: block;会中断的事实之外,将跨度设置为阻止而不是div实际上没有什么区别html验证,而span不会 - div元素中不允许阻止元素

这是我能想到的最优雅,最有效的方式。

相关问题