html 打印


 

【轉載,出處未知,】,紅色內容已測試,其余未測試。

 

在打印HTML頁面時控制分頁
2011年12月22日 星期四 下午 9:31

打印分頁功能:
page-break-after, page-break-before
根據資料上的說法,應該是這么用的:
<style type=“text/css“>
.pageEnd {page-break-after:always}
</style>
然后在需要強制分頁的地方用:
<br class=“pageEnd“>

 

IE與FF的分頁打印問題

 

前幾天遇到個問題,不大,但很頭痛,原因是一個HTML頁面中的table太大了,打印出來自動分頁顯示。在IE中不會有問題,在FireFox中出現跨頁部分的table丟失問題。
解決辦法是在使用PAGE-BREAK-AFTER屬性(強制分頁),並應用<style media="print">(將style只應用於打印輸出)。具體如下
....
<STYLE type="text/css">
.diss {display:none;}
</STYLE>
<style media="print">
.diss {display:block;height:1px;}
.PageEnd { PAGE-BREAK-AFTER: always;}
</style>
<!--如果是IE,覆蓋掉,否則IE打印有問題-->
<!--[if IE]>
<style media="print">
.diss {display:none;}
.PageEnd {}
</style>
<![endif]-->
........
<body>
.....
<div id="testDiv" class="diss"><p class="PageEnd">&nbsp;</p><br></div>
<table>
........

 

 

 

如何在打印HTML頁面時 控制分頁 

最近在開發中碰到這個問題, 開始一直沒想到合適的解決方法, 后來有人提醒用CSS試試. 馬上去查資料,發現CSS中有這個功能:

page-break-after, page-break-before

根據資料上的說法,應該是這么用的:
<style type="text/css">
br.pageEnd {page-break-after:always}
</style>

然后在需要強制分頁的地方用:
<br class="pageEnd">


在打印HTML頁面時控制分頁
1, 如果以<table>標簽間隔,用<div style="page-break-after: always"></div>實現
2, 如果以<tr>間隔,在要分頁的地方用<tr style="page-break-after: always">實現

不過我用第2種方法后,雖然可以分頁,但第2頁上面的第一個tr的上邊框不顯示,怪


 

 

CSS2 打印參考
http://www.w3school.com.cn/css/css_ref_print.asp

 

有時候當我們需要把頁面中一張太長的表格分成幾頁輸出,並保證每一頁的表格都能保留表頭(或者包括表尾).也有時候我們需要控制表格中某一個包含內容比較多的行直接輸出在下一頁,以免這一行的內容被分割成兩頁.

在這種情況下,我們就需要用到CSS樣式表來設置表格內行的style,從而達到我們想要的打印輸出效果.

 

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    <title>分頁打印</title>
</head>

<body>
    <object id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0 ></object>
    <table border="0" style="font-size:9pt;" width="300px" align="center">
        <thead style="display:table-header-group; font-weight:bold">
            <tr>
               <td colspan="2" align="center" style="font-weight:bold; border:3px double red">
                    每頁都有的表頭
               </td>
           </tr>
        </thead>
        <tbody>
            <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr style="page-break-after: always;">
                <td>在這個之后分頁</td>
                <td>在這個之后分頁</td>
           </tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
           <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
           <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
          <tr>
                <td>在這個之前分頁</td>
                <td>在這個之前分頁</td>
           </tr>
           <tr><td>表格內容</td><td>表格內容</td></tr>
           <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
            <tr><td>表格內容</td><td>表格內容</td></tr>
       </tbody>
       <tfoot style="display:table-footer-group; font-weight:bold">
            <tr>
               <td colspan="2" align="center" style="font-weight:bold; border:3px double blue">
                  每頁都有的表尾
               </td>
           </tr>
        </tfoot>
    </table>
  <div align="center">
       <input type="button" value="打印預覽" onclick="document.all.WebBrowser.ExecWB(7,1)" />
       <input type="button" value="打    印" onclick="javascript:window.print()" />
    </div>
</body>
</html>

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM