1

我有一些字符串(都是字母和罕见的换行符,没有空格或任何其他分隔符),我想填写表格单元格,直到单元格宽度(取决于窗口大小,设置50%为例子)。我希望浏览器在点击表格单元格宽度时几乎不换行,但也欢迎字符串中的换行符。表格单元格中的内容应该具有给定的固定最小宽度(200px在下面的示例中),如果进一步调整窗口大小,这应该会导致出现垂直滚动。当窗口变得太小时,我在此屏幕截图中显示:

在此处输入图像描述

我已经通过使用max-widthfor td( playground ) 在 FF10 中实现了所需的行为,但我不能对 IE 做同样的事情:它忽略max-width. max-width此外,当设置为 on时,它有非常奇怪pre的行为:渲染器忽略内容的实际宽度并认为它pre没有被包裹(游乐场- 与 FF 相比;类似的问题报告在这里那里)。在最坏的情况下,将内容严格固定是可以的(对于IE200px应该应用,应用一个没有任何效果)。为了使此修复仅影响 IE,我尝试了以下 CSS:pretd

pre {
    white-space: pre-wrap;
    word-wrap: break-word;
    width: expression("200px");
}

td.wrap {
    color: red;
    max-width: 200px;
}

不幸的是,不适用于 IE8。

目标浏览器:FF9(更高版本)、IE7、IE8、Chrome(最新)。

对不起,如果这个问题是重复的:我已经检查了如何在 pre 标签中换行?,我怎样才能自动换行这个列表项?,不能做最大宽度, Max-Width 不能在 IE7和许多其他的表上工作: 没有为 IE 找到明确的解决方案。

4

1 回答 1

1

我试图从另一个方面解决这个问题:) 将表格包裹在一个 div 中min-width: 400px,这让 IE 变得无能为力。这是小提琴:http: //jsfiddle.net/6Agbw/3/。希望这是你需要的。

于 2012-05-13T12:20:04.213 回答