Re: http://www.revenutiontesting.com/w3c/page-break-inside-002.xht

Grant, Melinda wrote:
> This test works: it passes all known current implementations.
>  
> BUT, I'm struggling with the test design (and with testing 
> page-breaking, in general).  The spec quite explicitly calls out that a 
> UA may break anywhere...  How do you fail a UA for breaking before the 
> b, or the a for that matter?  It's certainly allowed.  It's even a 
> reasonable heuristic, to break near the end of the page at start of a 
> new paragraph, even if widows don't force a new page; we've seen at 
> least one implementation (Prince) do something similar on another test.
>  
> We could redesign the test to greatly reduce the likelihood of 
> accidental failure, by setting the 'page-break-inside: avoid' on a big 
> span whose static position should be up high on the page: a page break 
> there would almost certainly indicate a defect, rather than a reasonable 
> heuristic.  But to make this work, we need to create a 
> page-size-specific test, which we generally try to avoid.
>  
> I'm leaning toward accepting the page-size limitation in favor of 
> reducing the likelihood of accidental failure.  Thoughts?

The UA is allowed to break pretty much anywhere in the page, just
like it's allowed to break pretty much anywhere in a line. But in
making the test suite, we have to make *some* assumptions, and one
of the assumptions we chose to make was that UAs will only break
near the end of a page unless a page break is forced.

If the UA wants to "break near the end of the page at the start of a
new paragraph" and the UA supports the orphans and widows properties,
then it should set those in its default style sheet and honor the
author's settings precisely if the author has set them to some other
values.

I don't think we should be concerned about accidental failures due
to unexpected page-breaking heuristics. If a UA does fail the test,
the implementor can post here and either suggest an improvement to
the test or submit pass results for an "equivalent test" that has
been  vetted by the WG. Especially given that the test doesn't fail
any known implementations, I don't think making our page-breaking
tests page size specific is something we should be compromising here.

~fantasai

Received on Thursday, 17 July 2008 21:05:02 UTC