[css3-break] Consuming Height at Breaks

http://www.w3.org/TR/2012/WD-css3-break-20120823/#break-decoration

This section of the spec discusses how to deal with the space between
a breakpoint and the bottom of the page. The behavior we decided was
that:
   * if there is specified height, this extra space is not counted and
     not painted
   * if height is auto, this extra space is consumed and painted

There's a problem with this: not extending the box to the bottom of
the page could be confusing for floats, since they must take up space
all the way to the bottom of the page.

To roll back a bit, suppose there's a float whose contents are broken
to the next page. The content on this page ends a few inches before
the bottom of this page.

+-----------------+  +-----------------+
| ............    |  | #float# ....... |
| #######  ...... |  | #float# ....... |
| #float# ....... |  | ####### ....... |
| #float# ....... |  | ............... |
|  ? ? ?  ....... |  | ............... |
| ? ? ? ? ....... |  | ............... |
+-----------------+  +-----------------+

This float brings up some questions:

   1. Can you flow content underneath a broken float, i.e. between a
      break inside the float and the bottom of the page?

   2. If not, i.e. if the float is occupying that space, why are we
      not drawing its backgrounds there?

   3. If we are drawing its backgrounds there, why are we not consuming
      specified height where we're drawing?

Fwiw, most current implementations draw there and consume height.

Rossen explains the issue in more general terms: the page break should
act like clearance: just increasing the effective length of the content,
and not having any other impact on the layout of its container.

~fantasai

Received on Thursday, 6 September 2012 23:27:41 UTC