浏览器对page-break-inside: avoid
的支持很差。在很多情况下,它不会应用。就我而言,它是一个带有flex-wrap
的嵌套弹性框。
有没有办法使用 javascript 添加分页符?
我可以检测浏览器是否处于打印模式,FF中onbeforeprint
事件,或者在Chrome上window.watchMedia
,但接下来呢?
我想我需要找出以像素为单位的打印页面大小,以便确定插入分页符的位置。但是window.screen.availHeight
返回相同的值,并且window.print.availHeight
不存在:(
假设这在某种程度上是可能的,那么我该如何进行分页符?
尝试计算,A4在宽度和高度之间有一定的比例,所以简单地说,如果你的打印css使html/body的宽度为900px。可以使用 A4 比例计算每个打印页的高度。
因此,您可以添加一个更改布局的打印 css 文件,以便需要在下一页上的内容具有边距顶部。