代码之家  ›  专栏  ›  技术社区  ›  Patrick McElhaney

CSS中的分页符属性应该如何工作?

  •  2
  • Patrick McElhaney  · 技术社区  · 15 年前

    现代浏览器是 supposed to support the CSS page-break properties 在某种程度上。但是,当我使用时,没有任何浏览器可以以任何方式打印。 avoid , widows orphans . 是我做错了,还是浏览器支持不如广告上说的那么可靠?

          h2 {
            page-break-after: avoid;
          }                         
    
          p {
            page-break-inside: avoid;   
            orphans: 2;
            widows: 2;
          }
    
    3 回复  |  直到 15 年前
        1
  •  7
  •   ChrisLively    15 年前

    浏览器支持打印很糟糕。不只是一点点,而是完全没有比较。大约每隔一年(过去10年),我都会玩这个游戏,我总是得出同样的结论:不要依赖浏览器来处理好打印。

    如果它必须正确定位,那么就动态地创建一个PDF文件,并让用户打印它。

        2
  •  1
  •   JGood    15 年前

    如果你想做一个分页符,我知道这是它的工作方式,至少在firefox和ie中是这样的。上次我检查这个是在ie7中工作的。

    Page 1
    
    <br style="page-break-after:always" />
    
    Page 2
    

    应该 在单独的纸张上打印页面,完全取决于浏览器。

        3
  •  0
  •   Jon Snyder    15 年前

    我知道这会违背所有人关于HTML开发的说法,但是使用 桌子 . 把需要放在一起的内容放在一张表中,这样页面就不会被拆分到表的中间。如果表的长度超过一页,那么它将被拆分到表中间的某个位置,但使用表是在打印时保持内容一致的一种好方法。