我被迫做一些与 IE8 兼容的开发。
从这段代码开始,我们看到随着窗口的缩小,表格以一种将文本与其单选按钮分开的方式包裹了文本:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html><body>
<table style="border-collapse:collapse; border:1px solid black"><tr>
<td style="border-collapse:collapse; border:1px solid black">
Foo
</td>
<td style="border-collapse:collapse; border:1px solid black">
<label style="white-space:normal"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:normal"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:normal"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
</td>
</tr></table>
</body></html>
因此,将white-space
第三个元素的样式更改为nowrap
似乎可以解决问题。现在它将强制单选按钮和所有文本环绕在一起。
<td style="border-collapse:collapse; border:1px solid black">
<label style="white-space:normal"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:normal"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:nowrap"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
</td>
但是,如果进一步缩小窗口,其他元素的问题仍然存在,因此我们也将前两个元素更改为nowrap
:
<td style="border-collapse:collapse; border:1px solid black">
<label style="white-space:nowrap"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:nowrap"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
<label style="white-space:nowrap"><input type="radio" />
Bar Bar Bar Bar Bar Bar Bar
</label>
</td>
现在整个表格单元格不再换行!
它在 Firefox 中正常工作,但在 IE8 中不能正常工作。有任何想法吗?谢谢!