RE: [css3-regions] invalid flow names

It should be perfectly valid to use 'inherit'. If parent has 'flow-from' or 'flow-into' but it is not applicable there (e.g. it is inline element), 'inherit' may resolve into a valid flow name. If there is nothing to inherit from, it will resolve to initial value.

The difference between invalid name and valid keyword that resolves into no-flow (or 'none') is that invalid name is ignored and doesn't affect cascade. 

For example

	div.A { flow-from:article; flow-from:default; } 

results in "flow-from:article", but

	div.A { flow-from:article; flow-from:none; }

results in "flow-from:none".

IE implementation treats 'default' as invalid name (maybe also 'initial', but I have to check); 'inherit' and none are accepted and treated as described above.

BTW,  I haven't noticed when initial value for 'flow-from' became 'auto'. I think 'flow-into' and 'flow-from' should have same initial value, whatever corresponds to not using the feature. Current draft has this problem:

	div.X { flow-into:article; flow-into:none; } 	
	div.Y { flow-from:article; flow-from:none; }

will send X into flow 'article', while Y will not pick it up, so X will just disappear (because as currently defined 'none' is invalid for 'flow-into' hence it has to be ignored, yet it is initial value for 'flow-from' and therefore has to override previous value.

Alex

-----Original Message-----
From: www-style-request@w3.org [mailto:www-style-request@w3.org] On Behalf Of Alan Stearns
Sent: Tuesday, October 18, 2011 12:00 PM
To: www-style@w3.org list
Subject: [css3-regions] invalid flow names

Section 4.1 (flow-into) notes that Œnone¹, Œinherit¹, Œdefault¹ and Œinitial¹ are invalid flow names, but does not specify what happens when you use an invalid name. Section 4.2 (flow-from) does not mention invalid flow names at all. 

I am assuming that if an element has a 'flow-into: inherit' declaration then the element does not get placed into a flow. And if an element has a
'flow-from: inherit' declaration it does not become a region.

If this is correct, the <ident> definition in both sections should have this
text:

The values Œnone¹, Œinherit¹, Œdefault¹ and Œinitial¹ are invalid flow names. If an invalid flow name is used, the declaration is invalid and must be ignored.

Thanks,

Alan

Received on Wednesday, 19 October 2011 06:35:19 UTC