Closed tabatkins closed 6 years ago
There seem to be three ways to handle this case:
align-self: stretch
and a specified height constraint (min-height
/height
/max-height
) from align-content: last baseline
alignment.align-self: stretch
whose specified height constraint gets triggered such that it no longer sizes as stretch
.align-self: stretch
and align-content: last baseline
as having an end
fallback alignment instead of a start
fallback alignment.Tab and I are currently leaning towards the last option, since it seems the easiest to specify and implement and probably also the most author-friendly. Agenda+ to ask for opinions from the rest of the WG.
The CSS Working Group just discussed Compatible alignments aren't always compatible
, and agreed to the following resolutions:
RESOLVED: Option 3 from issue
Okay, I fixed the case we talked about.
We forgot another case: suppose we have two end-aligned things and they have specified safe overflow. They will behave as start-aligned. Do we force unsafe alignment in this case or bail and break baseline alignment or what?
The CSS Working Group just discussed Compatible alignments aren't always compatible
, and agreed to the following resolutions:
RESOLVED: Such alignments that overflow will not participate in last baseline alignment
When grouping boxes into baseline-sharing groups for content-alignment, one of the checks we do is that the elements either have "stretch" or "start"/"end" self-alignment. This ensures that the contents all share an edge in the direction they want to align towards, preventing silly situations.
However, if an element is last-baseline-aligned, and is set to "stretch", but with a max-height smaller than the container's height, it won't line up with an "end" element (because, when "stretch" is constrained, it falls back to "start"). This makes them not compatible. We should handle this in the algorithm.