给定一个带有h2元素后跟p个元素的文档,在使用wkhtmltopdf时,我有时会在h2和第一个p之间获得分页符。
我试过了:
h2 {
page-break-after: avoid;
break-after: avoid;
}
h3 + p {
page-break-before: avoid;
}
我认为应该避免在所有h2元素之后的分页符,并避免在h2之后的p元素之前的所有分页符。
这些似乎都没有任何效果。也许我在滥用它们。
似乎工作的是page-break-inside: avoid;
,但这意味着我必须将标题和第一段包装在一个元素中并将该样式应用于它。也许这是目前唯一的解决方案,但它会给我带来一些其他问题。
任何人都可以提供任何帮助吗?
答案 0 :(得分:1)
来自:http://madalgo.au.dk/~jakobt/wkhtmltoxdoc/wkhtmltopdf_0.10.0_rc2-doc.html
WebKit的当前分页算法还有很多 期望。基本上webkit会将所有内容呈现为一个长页面, 然后把它切成页面。这意味着如果您有两列 一个垂直移动半行的文本。然后是webkit 将一条线切成碎片显示在一页的上半部分。和 另一页的下半部分。它也会打破两个图像 等等。如果您使用的是QT的修补版本,则可以使用CSS page-break-inside属性可以解决这个问题。没有简单的 解决这个问题,直到解决这个问题,尝试组织你的 HTML文档,它包含许多页面可以在哪些行 切得很干净。
我认为这意味着page-break-inside: avoid;
是唯一可行的选项(尽管我使用的是版本0.12.1.1)。