哪些浏览器支持使用CSS和page-break-inside元素进行分页符操作?

use*_*762 14 css cross-browser page-break

我正在尝试使用page-break-inside CSS指令,其类将附加到div标签或表标签(我认为这可能仅适用于块元素,在这种情况下它必须是桌子).

我已经尝试了所有可能描述如何做到这一点的教程,但没有任何作用.这是一个浏览器支持的问题,还是有人真正得到了这个工作,CSS的确切位置如下所示:

@media print {

  .noPageBreak {
     page-break-inside : avoid;
  }
}
Run Code Online (Sandbox Code Playgroud)

seq*_*ell 5

Safari 1.3及更高版本(不知道4)支持page-break-inside(试试看,或者参见http://reference.sitepoint.com/css/page-break-inside).Firefox 3或IE7(不知道8)也没有.

从实际意义上说,对这个属性的支持很难看,在这一点上使用它根本没有意义.如果有10%的访问者拥有可以支持此功能的浏览器,那么您会很幸运.

我使用的解决方案是添加

page-break-after:always

到某些div,或在你想要休息的地方添加一个"分页器"div.我知道,这非常简陋,因为它没有达到您想要的效果,并且导致内容无法到达打印页面的底部,但遗憾的是没有更好的解决方案(证明我错了!).

另一种方法是创建一个样式表,删除所有无关元素(display:none)并使主要内容在一个主列中流动.基本上,将其转换为单列,纯文本文档.

最后,在打印机样式时避免浮动和列,它可以使IE(和FF)行为古怪.


phl*_*opy 3

Safari 1.3+ Opera 9.2+ KonquererIE8 都支持它,至少在某种程度上是这样。

Firefox显然还没有。

  • 我不认为这是真的 re:safari 1.3+ http://reference.sitepoint.com/css/page-break-inside 我也尝试过但它不起作用 (3认同)