请原谅我的英语。
我正在打印一份 pdf 格式的大型报告,其中包括一些表格(一个又一个的表格)。为此,我首先生成 html 格式的报告,然后使用dompdf http://pxd.me/dompdf/www/
这是我打印一张又一张表格的方式:
<div>
<table>
-----
</table>
</div>
<div>
<table>
-----
</table>
</div>
这是有分页符时打印表格的方式 https://i.stack.imgur.com/l9RUY.png
问题是,当存在分页符时,表行会被分割。我想避免它。
我尝试使用 CSS 打印属性,但它不起作用,在其他情况下为page-break-before: always;
在不同的页面上打印我的报告的每个表格。
<style type="text/css">
table { page-break-inside:auto }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
</style>
因为只有在必要时我才可以在报告中的所有表格中强制分页。
请帮忙。
检查此链接:Link1 https://stackoverflow.com/questions/9288802/avoid-page-break-inside-row-of-table
Link2 https://stackoverflow.com/questions/1763639/how-to-deal-with-page-breaks-when-printing-a-large-html-table
Link3 https://stackoverflow.com/questions/8712677/how-to-apply-css-page-break-to-print-a-table-with-lots-of-rows
有很多与您的问题相关的答案,因此请先尝试这个答案。
您可以尝试使用 CSS:
<table class="print-friendly">
<!-- The rest of your table here -->
</table>
<style>
table.print-friendly tr td, table.print-friendly tr th {
page-break-inside: avoid;
}
</style>
大多数 CSS 规则不适用于<tr>
直接标记,因为正是您上面指出的 - 它们有一个独特的display
style,它不允许这些 CSS 规则。但是,那<td>
and <th>
通常其中包含标签do允许这种规范 - 并且您可以轻松地将此类规则应用于所有孩子 -<tr>
's and <td>
如上所示使用 CSS。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)