-
Notifications
You must be signed in to change notification settings - Fork 756
Description
This is regarding #161 and #197.
So, Flexbox and Grid both define that that flex/grid containers always have baselines in both axises; if they don't have an appropriate child to generate one form, they just synthesize a baseline. On the other hand, https://drafts.csswg.org/css-align-3/#baseline-export defines that a bunch of the other display types just don't have baselines in some axises. This disparity is weird.
The baseline-alignment algorithms, similarly, tend to talk about doing alignment only in the inline axis, which seems... weird? A table should be able to baseline-align vertical-wm table headers with other vertical-wm cells in the same column; same for Grid, etc. So we should rewrite the algorithms to let baseline alignment always happen in either axis when appropriate. (Flexboxes can't baseline-align their children in the cross axis, as there's no semantic connection between items in different rows, but Grids certainly can.)
We already have text to make this work together well: https://drafts.csswg.org/css-align-3/#baseline-terms defines "baseline sharing groups" and "shared alignment contexts" based on WM and some related stuff so that those vertical-wm cells don't get aligned with horizontal-wm cells in their row just because they have spurious synthesized baselines in that axis.
So I think this is just a matter of fixing up a bunch of different bits of language (fairly exhaustively listed in Mats's two issues) to be consistent about how we talk about baselines and alignment.