Good test, but two things: 1. Remove @page from the page title, and 2. give the second spacer element the negative top margin: this will avoid triggering any bugs in negative margin handling at page breaks.
Tom Clancy, 2008/06/30 12:06
Done.
Melinda Grant, 2008/07/01 18:03
This test works: it passes all current known 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 Prince do something similar on another test.
We could redesign the test to greatly reduce the likelihood of accidental failure, by setting the avoid on a big span that starts 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 pretty much have to create a page-size-specific test, which we generally try to avoid.
Guess I'll post to public-css-testsuite and see what others think.
Melinda Grant, 2008/08/26 18:22
Elika prefers this design, and I didn't hear anything from anyone else, so I guess we'll stay with this until proven guilty.
Melinda Grant, 2009/03/09 16:43
The spec has changed wrt this assertion, which means the test needs to be redesigned. (page-breaking properties *may* be applied to inline as well as block elements.)
You could leave a comment if you were logged in.
test/css2.1/submit/11.txt · Last modified: 2014/12/09 15:48 (external edit)
Discussion
Good test, but two things: 1. Remove @page from the page title, and 2. give the second spacer element the negative top margin: this will avoid triggering any bugs in negative margin handling at page breaks.
Done.
This test works: it passes all current known 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 Prince do something similar on another test.
We could redesign the test to greatly reduce the likelihood of accidental failure, by setting the avoid on a big span that starts 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 pretty much have to create a page-size-specific test, which we generally try to avoid.
Guess I'll post to public-css-testsuite and see what others think.
Elika prefers this design, and I didn't hear anything from anyone else, so I guess we'll stay with this until proven guilty.
The spec has changed wrt this assertion, which means the test needs to be redesigned. (page-breaking properties *may* be applied to inline as well as block elements.)