使用javascript打印隐藏在屏幕上的部分

时间:2011-03-25 15:13:09

标签: javascript jquery html css printing

我遇到了一个我之前没有遇到的小问题:我使用javascript(jQuery)在网页的标签页中显示不同的信息部分。所以我正在做的是隐藏未被查看的标签,只显示正在查看的标签。

这非常有效,但现在我正在添加一个特定于打印的样式表,我想打印所有标签的信息,而不仅仅是正在查看的标签。

如何撤消打印样式表中这些部分的javascript隐藏?

修改:其他一些信息:

我正在使用jQuery来隐藏所有div.tabs sections,并在我设置的打印样式表中:

.wrapper div.tabs sections {
    display: block;
}

假设.wrapper div.tabs sections的较高值与div.tabs sections相比会使这些部分可见。但它没有......

3 个答案:

答案 0 :(得分:2)

最好的方法是更改​​JavaScript,以便修改应用于元素的类,而不是修改.style.display。然后,您可以使用屏幕和打印介质样式表以不同方式定位具有这些类的元素。

快速而肮脏的方法是在打印介质样式表中使用!important

答案 1 :(得分:1)

你真正需要的是CSS。只需定义打印时显示的一些内容。

继承人和榜样:

@media print {
    div.print_show{ dispay: block; }
    span.print_show{ display: inline; }
    .print_hide{ display: none; }
}

答案 2 :(得分:0)

您可以添加一个额外的类来将display:block添加到print.css ..