-moz-transform CSS无法防止在Firefox上打印时出现不必要的分页

rbpvctlc  于 2022-12-24  发布在  其他
关注(0)|答案(1)|浏览(167)

我有两个<table>,分别是headerdetails,如下所示:

<table id="header">
   <!-- many rows here -->
</table>
<table id="details" style="break-before: always;">
   <!-- many rows here -->
</table>

如您所见,我希望details始终打印在新页面中,而而不是header。当header的行数稍微增加时,header的最后一行超出第一页,因此我在Google Chrome上使用以下代码修复了它:

$("body").css("zoom", 0.93);

然而,对于Firefox,我不能使它工作,即使与以下:

$("body").css("-moz-transform", "scale(0.9)");

看起来Firefox总是保留原来的分页,即使缩小,这意味着header的最后一个tr总是转到第二页。我甚至尝试了下面的方法,但没有成功:

<!-- last row of header table -->
<tr style="break-before: avoid;">

我怎样才能让它在Firefox上运行呢?非常感谢!

e5nqia27

e5nqia271#

奇怪的是,尽管页面边距似乎不可能随着内容在Firefox上的缩小而增加,但以下代码仍然有效:

/* For Chrome */
$("body").css("zoom", 0.93);
/* For Firefox */
$("body").css("-moz-transform", "scale(0.93)");
$('head').append('<style>@page{margin: 0.3cm;}</style>');

相关问题