请注意,这似乎只是 Internet Explorer 7 及更低版本中的问题。这是我的 HTML 的简化版本:
<table>
<colgroup>
<col width="20" class="hidden_col" />
<col width="50" />
<col />
</colgroup>
<tr>
<td class="hidden_col"><input type="checkbox" /></td>
<td>Title</td>
<td>Longer Description</td>
</tr>
</table>
然后,我包含一个“打印”样式表,如下所示:
<link rel="stylesheet" type="text/css" href="print.css" media="print" />
该样式表包括以下内容:
.hidden_col {
display: none;
}
现在在几乎所有其他浏览器上,甚至包括 IE8,都可以正常工作。在屏幕上您会看到第一列,而在打印预览中您看不到。但出于某种原因,IE7 的行为非常奇怪。它当然在屏幕上正常显示,但是当您在 IE7 中进行打印预览时,唯一显示的是“Longer Description”。所以换句话说,它隐藏了第一列,也隐藏了第二列。我如何使它在所有浏览器中工作?