我正在制作一个HTML报告,将是可打印的,它有“部分”,应该在一个新的页面开始。
有没有办法在HTML/CSS中放入一些东西,将向浏览器发出信号,它需要在此时强制换页(开始一个新页面)?
我不需要它在每个浏览器中都能运行,我想我可以告诉人们使用特定的浏览器来打印它。
我正在制作一个HTML报告,将是可打印的,它有“部分”,应该在一个新的页面开始。
有没有办法在HTML/CSS中放入一些东西,将向浏览器发出信号,它需要在此时强制换页(开始一个新页面)?
我不需要它在每个浏览器中都能运行,我想我可以告诉人们使用特定的浏览器来打印它。
当前回答
中引入分页符的位置,可以添加样式为“page-break-after: always”的分页符标记 html页面。 “page-break-before”也可以
例子:
HTML_BLOCK_1
<p style="page-break-after: always"></p>
HTML_BLOCK_2
<p style="page-break-after: always"></p>
HTML_BLOCK_3
当用上面的代码打印html文件时,打印预览将显示三个页面(每个html块“HTML_BLOCK_n”),在浏览器中,所有三个块依次出现。
其他回答
中引入分页符的位置,可以添加样式为“page-break-after: always”的分页符标记 html页面。 “page-break-before”也可以
例子:
HTML_BLOCK_1
<p style="page-break-after: always"></p>
HTML_BLOCK_2
<p style="page-break-after: always"></p>
HTML_BLOCK_3
当用上面的代码打印html文件时,打印预览将显示三个页面(每个html块“HTML_BLOCK_n”),在浏览器中,所有三个块依次出现。
下面的代码为我工作,还有一些更多的例子在这里
<div style="page-break-inside:avoid;page-break-after:always">
</div>
CSS
@media print {
.pagebreak {
page-break-before: always;
}
}
HTML
<div class="pagebreak"></div>
克里斯·道格特说得很有道理。 不过,我在lvsys.com上发现了一个有趣的技巧,它实际上在firefox和chrome上都有效。只需将此注释放在您希望插入换行符的任何位置。您还可以将<p>标记替换为任何块元素。
<p><!-- pagebreak --></p>
当我们在浏览器上使用打印命令时,我需要在每第三行之后分页。
我添加了
<div style='page-break-before: always;'></div>
在每第三行之后,我的父div有display: flex; 所以我删除了display: flex;而且一切都如我所愿