page.net break-before在asp.net网站上打印网页时无法在firefox浏览器中工作

时间:2013-11-29 19:02:47

标签: c# javascript html asp.net css

<asp:DataList ID="DataList1" runat="server">
      <ItemTemplate>
           <table id="tbtest" style="page-break-before:always;">
               <tr>
                   <td> Dummy Text</td>
               </tr>
           </table>
      </ItemTemplate>
</asp:DataList>

上面的代码在google chrome中完美地打破了页面,但似乎没有在firefox浏览器中运行,任何人都有任何解决方案,我应该如何在firefox浏览器中插入分页符。

1 个答案:

答案 0 :(得分:0)

看看我在FF文档中找到了什么:https://developer.mozilla.org/en-US/docs/Web/CSS/page-break-before?redirectlocale=en-US&redirectslug=CSS%2Fpage-break-before

  

此属性适用于生成框的块元素。它   不适用于不会生成框的空白。

1 - 尝试检查是否放置“display:block;”在你的元素中起作用:

<asp:DataList ID="DataList1" runat="server" style="display:block;">

<table id="tbtest" style="page-break-before:always;display:block;">

如果您之前有元素,请尝试设置display:block

2 - 我没有正确测试的Firefox浏览器,但我过去常常在元素前放置一个<p>并运行,试试这个:

<asp:DataList ID="DataList1" runat="server">
      <ItemTemplate>
           <p>
               <table id="tbtest" style="page-break-before:always;">
                   <tr>
                       <td> Dummy Text</td>
                   </tr>
               </table>
           </p>
      </ItemTemplate>
</asp:DataList>

或者这个:

<asp:DataList ID="DataList1" runat="server">
      <ItemTemplate>
           <p></p>
           <table id="tbtest" style="page-break-before:always;">
               <tr>
                   <td> Dummy Text</td>
               </tr>
           </table>
      </ItemTemplate>
</asp:DataList>

尝试这两个提示,但我不是百分之百确定是否有些可行,因为我现在无法测试,但至少你知道官方文档中的问题并且有一些东西可以尝试工作。我希望有所帮助。