2012-04-29 102 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;} 
相關問題