Forum How do I...?

table spans multiple pages, footer not on last page

pestafo
I have two <div> the first is float:top the second float:bottom. The content of the first div spreads multiple pages. On each page except the last one a footer text should appear. I tried to do it with two page definitions without success.

Since the second div is float the 'noPageFooter' class has no effect. And if I put it outside the second div an extra page without footer appears (no footer = good, extra page = bad).

Is there a way to achieve what I want?

<html>
  <head>
    <title>Test</title>
    <style type="text/css">
@page {

  @bottom {
    content: flow(pageFooterFlow);
  }

}

@page noPageFooterPage {

  @bottom {
    content: normal;
  }

}

.noPageFooter {
  page: noPageFooterPage;
}

.pageFooter {
  flow: static(pageFooterFlow);
}

</style>
  </head>
  <body>
    <div style="float:top;">
      <table>
        <tr><td >top<p class="pageFooter">Footer text ....</p></td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
        <tr><td >top</td></tr>
      </table>
    </div>
    <div style="float: bottom; margin:0; padding:0;">
      <table class="noPageFooter">
         <tr><td >bottom</td></tr>
         <tr><td >bottom</td></tr>
         <tr><td >bottom</td></tr>
      </table>
    </div>
  </body>
</html>
mikeday
Tricky question; I'm afraid that you might be running into the limits of what page floats can do at this time. We will see if we can revisit this issue after the release of Prince 7.0.
pestafo
Is there a way to prevent an extra page if 'noPageFooter' class is used outside the 'flow' divs?
mikeday
If I apply noPageFooter to the second float div then the "bottom" ends up on a page by itself, with no footer. Is that what you mean by extra page at the end?
pestafo
Not quite, the 'bottom' (second div) part should be on the last page with the last few 'top' lines and this page should have no footer text.

Since the table goes over multiple pages I have no element which holds the complete content of the last page - which would be the last few rows of the table together with the second div. That probably means that there is no way to achieve what I want.