printjs打印表格的时候多页的时候第一页出现空白

现象:打印多页的时候第一页空白了,一页的时候没有问题

插件:printjs

网上搜索半天找到的方式解决:

1. 对于我这次的现象毫无作用。其他情况不得而知,未遇见过。这个应该是大家用的比较多的方式

  printJS({
  printable: [`data:image/jpg;base64,${this.printData.url}`],
  type: 'image',
  style: `@media print { @page {size: auto; margin: 0; } body{margin:0 5px}}` // 解决出现多页打印时第一页空白问题
})

2.有作用,但是样式出问题了 (原地裂开)

printJS({
        printable: id,
        type: 'html',
        targetStyles: ['*'],
        scanStyles: false,//这里不继承本来样式
        style: `
          @media print {
            
            body{
              margin:0 5px;
              display: inline-block; //重点,将内容换成行内块
            }
            `,
      })

3.仔细检查  发现table上面多了个属性page-break-inside:avoid

我们把这个css属性移到tr标签上面  居然神奇的解决了,多次尝试 确实是这个属性影响到了

<div ref="printRegForm">xxxxxx</div>
const printRegForm = ref();

printJs({
 printable: printRegForm.value,
 type: 'html',
 scanStyles: false,
   style:printStyle , // 
});

CSS page-break-inside 属性 | 菜鸟教程

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值