【问题标题】:{page-break-after: always} not working when printing{page-break-after: always} 打印时不工作
【发布时间】:2013-06-07 17:32:33
【问题描述】:

编辑:我刚刚注意到这适用于 IE9,但不适用于 IE10 和 Chrome。

我们以电子方式从我们的一个供应商处收到 HTML 格式的采购订单报告。我们通常打印这些,在它每页放 1 个 PO 之前,但现在它不添加分页符。我检查了 html,但我不明白为什么它会突然不起作用。这是(格式错误的)html:

<HEAD>
<STYLE TYPE='text/css'><!--
BR.breakhere {page-break-after: always}
.tb1{font:10pt Arial;}
.tb2{border-left:1px solid #000000; border-right:1px solid #000000;border-top: 1px  solid #000000;border-bottom: 1px solid #000000;}
.tb3{font:10pt Arial;border-left:1px solid #000000; border-right:1px solid #000000;border-top: 1px  solid #000000;border-bottom: 1px solid #000000;}
.tb4{font-size:8pt;}
--></STYLE>
</HEAD>

假设分页发生在这里:

<BR class=breakhere>

它紧跟在一个 TABLE 元素之后,TABLE 在最后一个 TR 之后有一个 HR(呃)。

<BR><HR style = "width:100%;height:10px;color:#000000"></TABLE><BR class=breakhere>

我想联系他们并提及这一点,但我不确定这是代码还是我们这边的东西?我已经尝试了所有浏览器、多台打印机和工作站,但无法让它断页。

谢谢!

【问题讨论】:

  • 这是用特定的浏览器吗?
  • 我试过 IE 和 Chrome 没有中断。
  • 啊,你让我想到了一些事情。 IE 9,中断工作,IE 10 和 Chrome 不工作。更新问题。
  • page-break-after 已弃用,取而代之的是 break-after。看看break-after: page 是否能完成这项工作。 developer.mozilla.org/en-US/docs/Web/CSS/…
  • break-after: pagebreak-after: always 在 IE10 或 chrome 中均无效。

标签: html css page-break


【解决方案1】:

分页符对于 Internet Explorer 来说是不够的。如果你试试这个,你可以看到结果。我有同样的问题,但我通过这种方式解决了。

<div style="page-break-after: always;"></div>
<div>&nbsp;
</div>

【讨论】:

  • 天哪,你是个传奇!之后与空白 div 完美搭配
  • 微软的某处有一块牌匾“可以忽略空元素。”
  • 经过测试,运行良好!
  • 哇,样式属性起作用了!没有别的了,很奇怪
  • 这根本没有意义......但它确实有效。谢谢!
【解决方案2】:

我也一直在处理这个问题。看来,在换行符中使用 page-break-after 属性是 IE10 中的禁忌。根据 Internet Explorer 当前支持 CSS 2.1 第 13.3.1 节的文档,page-break-after 属性不支持换行符或标题元素。请参阅此链接中的备注:http://msdn.microsoft.com/en-us/library/ie/ms530842。我不得不切换我的代码以使用带有课后休息的 div 但这似乎在 IE9 中不起作用,这太棒了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-06-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-22
    • 2014-11-20
    • 1970-01-01
    • 2021-04-06
    相关资源
    最近更新 更多