[css3-page] Initial containing block and varying page size.

Hi,

A recent thread about viewport-percentage units[1] mentioned a sentence 
of css3-page §4 that I hadn’t noticed before:

> The edges of the page area on the first page establish the rectangle
> that is the initial containing block of the document.

§13.2 of CSS 2.1 has a similar sentence.

This seems to imply that the ICB is always the same (and has the same 
size), even if pages thorough the document have different page area 
sizes. In particular, the width of the ICB used for the used width of 
the root element (assuming :root { display: block; width: auto }) stays 
the same.

This means that switch from portrait to landscape in the middle of a 
document (as in §9.2’s example) is pretty much useless: the extra 
horizontal space is not used.

>Example 26:
>
> This example will put all tables on a right-hand side landscape page
> (named "rotated"):
>
> @page rotated { size: landscape }
> table { page: rotated; page-break-before: right }


In a thread from last year[2] however, the group seemed to agree on the 
opposite:

> Layout is performed per-page, with each page continuing progress from the
> breakpoint on the previous page, but recalculating sizes assuming an initial
> containing block of the current page size.

So there is one ICB per page after all? This is how I assumed things 
worked, but the spec seems to say otherwise. I can’t find the above rule 
in the ED.

On viewport-precentage units, css3-values says:

> Note that Paged Media defines how the initial containing block
> transforms across varying page widths. This also affects these units.

The first sentence is in contradiction with what I can read in css3-page.


I think that css3-page needs to clarify one way or another what the ICB 
is for its various usages:

* Layout of the root element
* Layout of abspos elements without a positioned ancestor
* Layout of fixpos elements
* Viewport-percentage units from css3-values
* (Others?)

Finally, if "the ICB" means something different depending on where it is 
used, shouldn’t we have multiple separate concepts instead?


[1] http://lists.w3.org/Archives/Public/www-style/2012Oct/0568.html
[2] http://lists.w3.org/Archives/Public/www-style/2011Sep/0301.html

Cheers,
-- 
Simon Sapin

Received on Saturday, 27 October 2012 18:23:27 UTC