Re: [css3-regions] Comments on Editor's Draft

On 21/08/2011 19:41, Anton Prowse wrote:
> On 06/08/2011 17:35, Christoph Päper wrote:
>> Vincent Hardy:
>>> Christoph Päper:
>>>> nodes should not be able to pull arbitrary flows,
>>>> only purely CSS-based ones – using ‘@region’ – should do that.
>>>> Document nodes should only support anonymous flows that contain
>>>> their DOM descendants only
>>>
>>> #F {content: flow-from(myFlowName);}
>>> #G {content: flow-from(thirdFlow);}
>>
>> These rulesets should not work in my opinion (as stated above).
>>
>> We can avoid cycles if “content: flow-from(foo)” only works within
>> ‘@region’, not everywhere.
>>
>> Can you think of a valid usecase where current
>>
>> foo {flow: bar;}
>> baz {content: flow-from(bar);
>> /* position, size etc. */}
>>
>> could not be rewritten as
>>
>> foo {flow: bar;}
>> baz {content: none;} /* usually unnecessary */
>> @region quuz {
>> content: flow-from(bar);
>> /* position, size etc. */}
>>
>> ? Note that you would still have flows without using ‘@region’: With
>> ‘initial’ styles you have one anonymous flow (or chain of flows),
>> foo→bar→baz→quuz, in
>>
>> <foo><bar><baz><quuz/></baz></bar></foo>
>>
>> and when adding
>>
>> foo, baz {position: static;}
>> bar, quuz {position: absolute;}
>>
>> you have two anonymous flows, :root→foo and :viewport→(bar→baz)→quuz,
>> or three anonymous flows, :root→foo, :viewport→bar→quuz and bar→baz,
>> if you analyze it differently. If I’m not mistaken there is currently
>> no way to make that foo→baz and bar→quuz, i.e. remove children from,
>> but keep grandchildren in the normal “descendant” flow.
>
> I think I've got a blind spot here because I'm failing to understand
> what you're proposing.
>
> When regions are permitted to be formed by DOM elements such as B, we
> have circularity when we send A, B and C to a flow and then make B the
> target of that flow. You say (correctly) that the problem arises because
> B is allowed to be a region receiving a named flow that potentially
> contains B. But I don't understand the alternative you're proposing.
>
> You want to send the name flow to a region whose selector is "quuz", but
> what does quuz match if not a DOM element? Is it a grid cell, a column?
> Do you intend that the matching thing always be an anonymous "external"
> box that is independent of the content it contains? (Which is indeed the
> case for a column; I don't recall in the case of grid cells.) This would
> seem to make regions a lot less useful, though.

I didn't mean "anonymous"; I meant something like "pseudo-element".

Cheers,
Anton Prowse
http://dev.moonhenge.net

Received on Sunday, 21 August 2011 17:50:13 UTC