You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

打印表格时如何避免页脚缺少结束线?自定义CSS无边框报表打印问题求助

你可以通过HTML表格原生的tfoot重复打印特性配合CSS打印样式实现需求,无需额外JS计算分页,兼容性更好:

第一步:补充CSS样式

在你原有CSS基础上新增以下代码:

/* 统一表格布局,避免列宽错乱 */
table {
  table-layout: fixed;
  width: 100%;
}
/* 开启打印时页脚每页重复渲染特性 */
@media print {
  table tfoot {
    display: table-footer-group;
  }
}
/* 自定义分隔线样式,优先级匹配原有样式的!important规则 */
.table tfoot tr td {
  border-left: 0 !important;
  border-right: 0 !important;
  border-bottom: 1px solid #000000 !important;
  height: 1px;
  padding: 0 !important;
}

第二步:修改模板代码

在现有</tbody>结束标签后新增tfoot分隔线结构,完整模板修改后如下:

<tbody>
  <div t-foreach="o.get_print_lines_media_carta_led(o)" t-as="d" width="100%">
    <t t-if="d['code'] != 'ls'">
      <tr>
        <td style="width:5%;text-align:left;padding-left: 0.9em !important;" class='letra2'>
          <t t-esc="d['code']" />
        </td>
        <td style="width:20%; text-align:left;padding-left: 0.9em !important;" class='letra2'>
          <t t-esc="d['code_name']" />
        </td>
        <td style="width:25%; text-align:left;padding-left: 0.9em !important;" class='letra2'>
          <t t-esc="d['name']"/>  
        </td>
        <td style="width:10%; text-align:right;padding-right: 0.9em !important;" class='letra2'>
          <t t-esc="'{:,.2f}'.format(d['debit'])" />
        </td>
        <td style="width:10%; text-align:right;padding-right: 0.9em !important;" class='letra2'>
          <span t-esc="'{:,.2f}'.format(d['credit'])"/>
        </td>
      </tr>
    </t>
  </div>
</tbody>
<!-- 新增页脚分隔线结构,合并5列匹配表格列数 -->
<tfoot>
  <tr>
    <td colspan="5"></td>
  </tr>
</tfoot>

注:如果你的表格外层容器设置了overflow: auto/scroll等属性,需要移除该规则,否则会影响tfoot的打印重复渲染特性。

内容的提问来源于stack exchange,提问作者Oscar Vardela

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 00:09:03