2

这是我的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 是否然后在表格中添加分页符?

谢谢您的帮助。

4

1 回答 1

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>
于 2012-12-18T21:15:37.350 回答