【问题标题】:How to add border at the bottom of each paginated table with CSS?如何使用 CSS 在每个分页表的底部添加边框?
【发布时间】:2016-07-23 22:18:12
【问题描述】:

我在 HTML 表中有一个很大的数据列表,这些数据来自数据库,然后打印输出为 PDF。表格只是普通表格,有几列,但我使用的样式有左右边框,以显示每一页上每个表格的垂直线,而不是水平线。我使用 CSS 来绘制边框,如下所示:

td {
  border-left: 1px solid #000;
  border-right: 1px solid #000;
}

我遇到的问题是在表格底部的每一页上进行分页(打印为 PDF)时,它没有关闭,所以看起来是打开的。我想关闭每页表格底部的边框。

我设法使用 tfoot 绘制了最后一行的边框,这在我到达最后一页之前效果很好,显然它也在那里绘制了它。不希望它画在最后,因为我已经在那里做了一个总结,所以有这条线就不好了。

<thead>...some header...</thead>
<tfoot>
  <tr><td class=myborder>&nbsp;</td></tr>
</tfoot>
<tbody>...list of data (100 rows of tr)...</tbody>

CSS,我在我的桌子上使用红色突出显示:

.myborder {
  border-top: 1px solid red;
}

所以我的问题是有没有任何 css 可以在每个页面结束处绘制简单的线条,但不能在最后一页?

如果使用 tfoot,我已经尝试寻找解决方案,它与下面的帖子非常相似,但有点不同,我不希望 tfoot 显示在最后一页,但任何其他页面都可以。

How to make TFOOT to show only at the end of the table

提前致谢。

PS。感谢 Ben 的格式修复,这是我的第一篇文章 :)

【问题讨论】:

  • 没问题,用&lt;tfoot&gt; 替换&lt;foot&gt; 有帮助吗?

标签: html css pagination


【解决方案1】:

我已经更新了您的问题,并且在格式化时我注意到您的&lt;tfoot&gt; 中至少有一个错误的&lt;td&gt;。此外,您使用&lt;foot&gt; 打开,应该是&lt;tfoot&gt;

【讨论】:

    【解决方案2】:

    您可以使用类似的方法来申请除最后一个孩子之外的所有 tf​​oot。

    tfoot:not(:last-child):after {
        border-bottom: 1px solid red;
    }
    

    第一个回答,如有错误请指正。

    【讨论】:

    • 感谢 Wee Hui Pheng 的回答,但不幸的是它对我不起作用。我正在使用 MPDF 来生成 PDF,我发现像这样的花哨的东西并不适用于所有的 CSS。我也尝试使用 nth-child(odd) 所以所有奇数行的背景颜色与偶数行不同,也不起作用。我猜 MPDF 还没有达到这个要求。
    • 我使用的MPDF版本是5.7.4
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-03-29
    • 1970-01-01
    • 1970-01-01
    • 2014-10-18
    • 1970-01-01
    • 2019-03-20
    • 2022-12-01
    相关资源
    最近更新 更多