2011-08-11 72 views
1

我目前面临一个相当困难的问题;非常感谢你的帮助。如何将我的表列的宽度设置为固定值?

我有一个2列,td1和td2表,并包含文本和两个都有固定的宽度。

td1.width = 10px的和td2.width = 20像素

固定宽度由一个从使用JQuery左侧在运行时设置一个(如该表中嵌套在另一个表里面...)

文本宽度可以比这些固定的宽度在场景中预期的行为是

列的固定宽度应停留更长的时间相同1)如果有额外的文本,该文本换行,它不应该增加或减少td宽度2)如果有空格,单元格宽度不应该减小在调整其他列或页面时调整;它应该保持完好。

我已经设置了td.whitespace属性来预先包装和td.word-wrap:break-word,但它们没有帮助。

这些可能会使用CSS 2.0(而不是3.0)?

感谢,

回答

0

好吧,我知道了解决。我的表有thead和colgroups。虽然他们的显示属性被隐藏了,但IE9.0忽略了它,而IE6.0在计算列的宽度时将它们考虑在内!

我删除了他们使用jquery和解决! ('。myTable thead,.myTable colgroup')。remove();}。

1

在这种情况下,由于宽度是如此之小,而文本通常没有小,它没有办法来包装他们的话,那么它扩展了td的宽度甚至有一定的宽度!

它减少了第二个td的宽度,因为第一个使用了额外的宽度。

此外,您可能会遇到文本太宽的情况(例如长词),并且在这种情况下无法将其包装。除非使用javascript,否则IMO是唯一的方法。

我建议你阅读这回答:HTML TD wrap text

+0

我设置了table-layout:fixed,white-space:pre-wrap,它现在已经在IE 9.0中修复了。但是,在IE 6.0中,它看起来很糟糕,并且列宽被搞乱了。任何解决方案适用于IE 6.0? –

+0

@William它在IE9中工作是一个奇迹,在IE6中,CSS支持更加有限,我怀疑是否有任何(css)方法可以做到这一点。 – jackJoe

+0

是的,我需要一个奇迹来使这项工作或知识如何做到这一点! –

相关问题