如何在不同的浏览器中打印多页HTML表

时间:2012-07-26 14:06:56

标签: css printing cross-browser

打印包含高度约为5厘米且不应分成不同页面的单元格的HTML表格的最佳做法是什么。

我已经制作了print.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 }

但是:

    Chrome中的
  • HTML页面中的图片分为不同页面
  • 在Firefox中,第一页为空,表格从第二页开始,表格的其余部分被删除(第3页再次为空)
  • IE我还不敢尝试

1 个答案:

答案 0 :(得分:1)

页面拆分CSS属性的浏览器支持很多,特别是在表格部件上。如果你想防止单元格内容中的分页符,我建议将内容嵌套在div中,并设置" page-break-inside:avoid;"在div上。如果你需要支持那些根本没有实现page-break-inside属性的旧浏览器,你还应该设置" display:inline-block; vertical-align:top;"在div。

另外,请注意,如果可打印区域的高度(即页面高度减去顶部和底部边距)小于单元格内容的高度,则浏览器无法避免破坏除非它能以某种方式扭曲空间结构(也许Firefox有一个" -moz - "属性?)。