w3ctag / design-reviews

W3C specs and API reviews
Creative Commons Zero v1.0 Universal
322 stars 55 forks source link

baseline-source #801

Closed bfgeek closed 1 year ago

bfgeek commented 1 year ago

Wotcher TAG!

I'm requesting a TAG review of the baseline-source CSS property.

The baseline-source property allows web developers to specify if an inline-level box should use the first or last baseline for alignment within an line-box.

Today the default behaviour is confusing for web developers. Consider:

test <div style="display: inline-block;">line1<br>line2</div>
test <div style="display: inline-flex;">line1<br>line2</div>

The "inline-block" will align to the last baseline, and the "inline-flex" will align to the first baseline.

baseline-source: auto is the existing (confusing) behaviour.

Web developers can specify baseline-source: first or baseline-source: last to directly determine how they want these boxes to align within a line-box.

See demo here: https://twitter.com/bfgeek/status/1612518098611089408

Further details:

fantasai commented 1 year ago

TAG review of this feature should be in conjunction with the other features that inter-relate, i.e. all the longhands of vertical-align and the dominant-baseline property. I don't think an isolated review of baseline-source by itself would really have much utility or interest from an architectural perspective otherwise.

LeaVerou commented 1 year ago

We looked at this today in a breakout. We don't think there are any architectural issues with it and we're fine with it moving forwards. We wondered if the property needs more values than first and last, or whether all these baseline properties need a shorthand tying them together and providing shortcuts for common cases, but these are also things that can be added later.

Thank you for flying TAG!

fantasai commented 1 year ago

There is a shorthand, it's called vertical-align. I pointed this out in the comment earlier.