Safari page-break-inside:避免不工作

时间:2015-03-25 14:34:36

标签: css printing safari page-break-inside

我遇到了CSS page-break-inside: avoid的问题。我有一些打印块有这个css属性设置,但是Safari会像真正的分页符一样突破任何内容,而它适用于所有其他主流浏览器(当前版本)我到目前为止已经测试过。

打印块保持哪种类型的内容似乎无关紧要,因为我已经看到这种行为,表和画布元素都在中间分开。

http://css-tricks.com/almanac/properties/p/page-break/https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariCSSRef/Articles/StandardCSSProperties.html而言,它应该有用。无法通过快速搜索找到有关此问题的任何其他和最新信息。

我在Windows 7& Safari 5.1.7。

1 个答案:

答案 0 :(得分:12)

尝试使用display: inline-block;代替page-break-inside: avoid;。您可能还想添加vertical-align: top;width: 100%;,以使元素的行为与普通块元素相似,而不是内联元素。

此技术在大多数浏览器中实施page-break-inside: avoid;之前就已经可靠地运行了。它仍然是防止内容块中的分页符最可靠的跨平台方式。

如果您想让表格牢不可破,可以在其上设置display: inline-table;。或者你可以把它放在一个内联块div中。