W3C home > Mailing lists > Public > www-style@w3.org > January 2008

[CSS2.1] [CSS3-Page] allowed breaks and fixed heights

From: fantasai <fantasai.lists@inkedblade.net>
Date: Wed, 16 Jan 2008 15:44:50 -0500
Message-ID: <478E6CC2.1070503@inkedblade.net>
To: www-style@w3.org

http://www.w3.org/TR/CSS21/page.html#allowed-page-breaks
  #  In the normal flow, page breaks can occur at the following places:
  #   1. In the vertical margin between block boxes. When a page break occurs here,
  #      the used values of the relevant 'margin-top' and 'margin-bottom' properties
  #      are set to '0'.
  #   2. Between line boxes inside a block box.

http://dev.w3.org/csswg/css3-page/#allowed-pg-brk
  # In the normal flow, page breaks  may occur at the following places:
  #
  #   1. In the vertical margin between block boxes (or rows in a table). When a page
  #      break occurs here, the used values of the adjoining 'margin-bottom' and
  #      'margin-top' properties are set to '0'.
  #   2. Between line boxes inside a block box.

Question is, what breaks are allowed here:

   <p style="height: 30em">Short text</p>

I think breaks in the border or padding area should be forbidden, as well as breaks
between a zero-height interface between the content edge and the line boxes. This
will prevent borders and padding that are tightly wrapped around a paragraph to split
off onto the next page without any accompanying content.

However I think we should allow breaks between the line box and the content edge if
there is extra space in between. I believe this is what most browsers do, and I suspect
many float-based layouts especially would break when printed if we did not allow this.
If the author really wants the block to stay together, he can set page-break-inside:
avoid.

I'll post testcases in a bit..

~fantasai
Received on Wednesday, 16 January 2008 20:45:09 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 27 April 2009 13:54:57 GMT