![](/img/trans.png)
[英]HTML/CSS printing page-break with float not working (eg: bootstrap)
[英]Even page-break for double-sided printing in HTML & CSS
我有打印媒體的分頁符,快速page-break-after: always
。 我使用這些來分隔單個批量打印作業中的多個報表。 不幸的是,當打印作業是雙面的時,分頁可能導致打印機在上一個報告的背面開始報告。
有沒有辦法強制分頁到一個偶數頁面? 或者,或者,要檢測某個元素將出現在哪個頁碼上?
標准中有CSS功能。 你走在正確的軌道上。 采用:
<div style="page-break-after: right">
-- your content --
</div>
問題是,目前唯一支持這種情況的主要瀏覽器是Opera。 盡管Opera有自己的挑戰問題,但它可能適用於您的情況。
CSS中沒有內置的功能。
一個主意:
您可以嘗試將每個報告包裝在div中,然后使用類似jquery的東西來計算div的高度 ,以確定它是否在奇數頁上結束。
如果它在一個奇數頁上結束,那么在那之后用你的分頁后類注入一個空div,以便它被提供給下一頁。
編輯
顯然,只有當您知道頁面在目標打印機上打印的dpi時,這才會真正起作用。 沒有神奇的答案可以適用於所有場景。
您需要在此處使用標准打印機設置進行一些實驗,以了解哪些對您/您的客戶有用。 如果有多種方案,您可以讓它們從下拉列表中進行選擇。
所以你要使用jquery檢查div的像素高度,檢查頁面的像素高度,看看div是在奇數頁還是偶數頁結束 - 如果報告在奇數頁上結束則注入分頁符。
如果用戶將使用雙面打印,您還需要提前了解 - 因為您只需要進行雙面打印。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.