我必须打印遍历多个页面的大型HTML表格。每个页面都应该有备忘录(页眉和页脚,公司名称和内容)。我正在jQuery-datatables
使用TableTools
。这是我的css
@media print
{
@page{
margin: 150px 0px 150px 0px !important;
padding: 0px !important;
size: A4 portrait;
}
table { page-break-after:auto;}
tr { page-break-inside:avoid; page-break-after:auto }
td { page-break-inside:avoid; page-break-after:auto }
thead {
display:table-row-group;
}
html{
background-image: url(memo.png) !important;
background-size: 200mm 287mm !important;
}
}
然而,当将上边距设置为@page
时,它会移动"一切(包括)背景下来。我想知道是否有办法将@page
的保证金应用于表格,但在设置背景时应避免使用,或者将背景图像添加到@page
我还试图将@page
保证金设置为0,将table
保证金设置为150px。它在第一页上很好,但由于表格被拆分为几页,因此忽略了其他页面上的页边距。
UPDATE
我添加了一些错误和想要结果的草图。红色是标题,蓝色是页脚,绿色是表格
答案 0 :(得分:0)
你可以添加一个空的(第一行到你的)<thead>
吗?在屏幕上查看表格时隐藏它,打印时将其高度设置为150px。
在桌子的每一页上重复thead。这意味着每个页面都以空行开头,为公司徽标腾出空间并向下推送数据。
同样,在<tfoot>
添加一个空的最后一行,以便在表格跨越每页的底部腾出空间。