在打印时在表格中添加分页符

时间:2012-12-18 21:13:30

标签: javascript css printing

这是我的php页面的粗略结构 -

<table>
  <tr>
    <th> header 1 </th>
    <th> header 2 </th>
  </tr>

 foreach (values as value) {

  <tr>
    <td> column 1 </td>
    <td> column 1 </td>
  </tr>

/* Here if condition is true and media=print I want to close the table, add a page break and start a whole new table as below so the page prints nicely */

  if (condition) {
     </table>
     <div style='page-break-after:always;'> </div>
     <table>

     <tr>
       <th> header 1 </th>
       <th> header 2 </th>
     </tr>

 }

}

是否有办法(可能在javascript中)检查media = print,然后在表格中添加分页符?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

您可以根据打印需求创建CSS样式指南。将班级page-break添加到您需要分页符的位置。

@media all {
  .page-break  { display: none; }
}

@media print {
  .page-break  { display: block; page-break-before: always; }
}
  

第一个声明确保永远不会看到分页符   视觉上...而第二个确保分页被看到   打印机。

<div class="page-break"></div>