CSS打印带备忘录的多页表

时间:2015-10-28 14:52:54

标签: html css

我必须打印遍历多个页面的大型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

enter image description here

我添加了一些错误和想要结果的草图。红色是标题,蓝色是页脚,绿色是表格

1 个答案:

答案 0 :(得分:0)

你可以添加一个空的(第一行到你的)<thead>吗?在屏幕上查看表格时隐藏它,打印时将其高度设置为150px。

在桌子的每一页上重复thead。这意味着每个页面都以空行开头,为公司徽标腾出空间并向下推送数据。

同样,在<tfoot>添加一个空的最后一行,以便在表格跨越每页的底部腾出空间。