- From: L. David Baron <dbaron@dbaron.org>
- Date: Tue, 8 May 2012 11:11:31 +0200
- To: www-style@w3.org
A few comments on http://fantasai.inkedblade.net/style/specs/css3-align/ follow: I don't think using 'true' as a property value works. Even though you don't mean it as a boolean, it looks like one. Though it might work if it were only allowed in combination with the other keywords. (In fact, I'm not sure what it means for it to be used alone; it seems like it's perhaps equivalent to 'true start' or 'true before', though that's not clear.) There also seems to be a bit of confusion (e.g., between the tables in section 2, Overview of Alignment Properties) as to whether, for the inline/main axis alignment, there is one property for default alignment of children and alignment of contents, or whether there are two separate ones: * For a start, the "sets default 'box-align' of children" should probably say "sets default 'box-justify'/'box-align' of children". * Additionally, though, the 'child-justify' property is mentioned in the table but not anywhere else. However, this leads me to a set of closely related broader issues: * It seems to me that in the case where the parent lays out its children (and I mean children, not descendants) in one dimension, i.e., everything except grid, then: (a) there's no point distinguishing between 'content-align' and 'child-align' since there's only one child at any given point in the secondary direction (b) the 'box-justify' property is meaningless since the children in the primary direction have to be aligned together (so I'm confused by the checkmark in the 'box-justify'/Block cell) *unless* there are external constraints on the space allocated to children (like constraints from other rows for the horizontal space given to cells within a table row) that don't (like they do for tables) actually change the size of the cells. * I'm confused about whichever of 'grid-row-align' and 'grid-column-align' is in the block direction (I'm not sure this is fixed as the table suggests) is supposed to work when there is more than one grid item in a cell. In particular, aren't the items going to be laid out as blocks in one dimension? If so, how can they be *individually* aligned in that dimension? (And isn't the ability to have multiple items in a cell the only reason that grid doesn't behave like tables (resizing the items) and avoid case (b) in the point above?) These lead me to believe (if I've thought this through correctly, which I'm not particularly confident of) that the six properties given in the table should be collapsed into three: * 'box-justify' should be removed since you can't align an element in the direction in which its parent lays out children (despite that grid claims to have such a property without actually saying how it works -- unless I'm missing something here, which I certainly could be) * 'child-align' should be removed since there's no reason to separate it from 'content-align': if an element's children support 'box-align' or auto margins then 'content-align' is perfectly fine to use as the default rather than needing a separate property for this * 'child-justify' should likewise be removed since it sets the default for 'box-justify' on children, and I'm proposing removing 'box-justify', and for the same reasons as 'child-align' -David -- 𝄞 L. David Baron http://dbaron.org/ 𝄂 𝄢 Mozilla http://www.mozilla.org/ 𝄂
Received on Tuesday, 8 May 2012 09:12:20 UTC