2012-04-29 17 views
0

我想打印只有选定的文档区域。我尝试将所选区域/ div的内容添加到新窗口并调用window.print,但问题出现在css上。由于我的页面有来自多个文件的CSS,所以我很难再次加载这些CSS文件。什么是最简单的想法只打印文件的某些部分

所以我需要将所选区域/ div内容与内联样式导出到新文档并打印出来。

回答

2

首先,如果你外部样式表做弊大于利到您的打印输出,你可以限制他们来筛选媒体用一个简单的媒体查询:<link rel="stylesheet" href="style.css" media="screen,projection" />

这样您的打印样式表可以开始与一个无风格的页面,不必重置任何以前的工作表。

典型的打印样式表隐藏广告,将颜色重置为高对比度颜色并调整排版 - 查看HTML5 Boilerplate的the print section

如果“选定区域”你的意思是,用户可以决定需要打印的东西,你可以很容易地实现,通过做类似.addClass('print');的JavaScript处理程序,然后打印CSS可能看起来像以下:

* {display: none;} 
.print, .print * {display: block;} /* Or inline, depending on the element */ 

如果你不关心IE 9 <,你可以这样做:

body :not(.print) {display: none;} 
相关问题