On 09/19/2011 10:39 AM, Tab Atkins Jr. wrote:
> On Mon, Sep 19, 2011 at 10:14 AM, fantasai
> <fantasai.lists@inkedblade.net> wrote:
>> Rules:
>>
>> * 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.
>> * Intrinsic sizes are calculated and maintained across the
>> entire element. Where an ICB size is needed, assume an
>> initial containing block of the starting page's size.
>
> I'm probably reading these incorrectly, but these two points seem to
> be in conflict. #1 says to recalculate sizes based on the current
> page size. #2 says intrinsic sizes are maintained across the entire
> element, and use the ICB of the starting page's size. I'm guessing #1
> excludes intrinsic sizes?
I probably should have ordered them the other 'way around...
Intrinsic sizes are calculated first, and they are calculated across
the entire element at once, using the ICB of the first page on which
the element appears. Then, layout is performed per page using those
calculated intrinsic sizes as input and assuming an ICB of the current
page size.
> Doesn't the ICB affect media queries?
No, the viewport size and the page size affect media queries. These
are not the same thing as the ICB.
> What happens if the second page is narrower, which triggers a MQ which
> significantly changes the layout?
The MQ <-> page size loop is addressed here:
http://dev.w3.org/csswg/css3-page/#size
But basically, MQ need to be resolved before layout, because style
resolution needs to happen before layout. So nothing in the style sheet
should ever cause a difference in how media queries match.
~fantasai