0

嗨,我有一个由三部分组成的表格,即字母部分、详细信息部分和注释部分我可以打印信件报告但现在我想在新页面上开始新报告我的意思是当用户尝试打印报告,字母部分应该出现在一个页面上,详细部分应该出现在一个新页面上,所有页面都是 A4 纸,有人可以帮我吗?我只想知道如何在表格中使用,例如。

<?php
echo "table";
while($row= mysql_fetch_array($result)){
echo "<tr>";
echo "<td>$row[data1]</td>";
echo "<td>$row[data2]</td>";
echo "</tr>";
}
echo "</table>";

?>
4

2 回答 2

0

在表格开始标记中使用page-break-before: alwaysCSS,即

echo '<table style="page-break-before: always">';

旁注: MDN 建议将其替换为break-before(参见参考链接),但我不建议这样做,因为几乎没有浏览器支持这个新的 CSS3 属性。

ps 我相信第一行应该是echo "<table>";,对吧?

参考:MDN 上的 page-break-brefore

例子:

<?php
echo '<table style="page-break-before: always">';
while($row= mysql_fetch_array($result)){ // Do NOT use mysql_* functions! Use MySQLi / PDO instead
  echo '<tr style="margin-top: 20px;">';
  echo "  <td>$row[data1]</td>";
  echo "  <td>$row[data2]</td>";
  echo "</tr>";
}
echo "</table>";
?>
于 2013-04-08T06:58:22.040 回答
0

这可能会有所帮助:

CSS 分页符

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

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

用法

<h1>Page Title</h1>
<!-- content block -->
<!-- content block -->
<div class="page-break"></div>
<!-- content block -->
<!-- content block -->
<div class="page-break"></div>
<!-- content block -->
<!-- content -->
于 2013-04-08T06:58:44.050 回答