如何获得IE7与由CSS隐藏的列打印这个是否正确?

StackOverflow https://stackoverflow.com/questions/2374164

请注意,这只是似乎是在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打印预览,那就说明是唯一“更详细的描述。”因此,换句话说,它隐藏了第一列,并且它也隐藏的第二列。如何使这项工作在所有的浏览器?

有帮助吗?

解决方案 3

我最终什么事做的是简单地在细胞指定宽度本身,而不是使用<colgroup>了在所有。在我的脑海里并不理想,所以我会离开这个问题打开一段时间的情况下,任何人都可以想出一个更好的解决方案,但它确实工作。这是我最后的HTML:

<table>

<tr>
<td width="20" class="hidden_col"><input type="checkbox" /></td>
<td width="50">Title</td>
<td>Longer Description</td>
</tr>

</table>

其他提示

您不能隐藏的表的单个元件,在表的内部元件只能使用与“表 - ”开始,至少他们只应该的CSS显示属性。请参阅获得更多的信息。

编辑:我认为你的问题是刚刚从使用属性毛刺你不应该使用

尝试这种情况:(另)

td .hidden_col{
    display: none;
}

由于某种原因在打印模式中,存在可以与在某些浏览器打印模式CSS样式的延续。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top