Contact emailsikilpatr...@chromium.org

ExplainerNone

Specificationhttps://drafts.csswg.org/css-align-3/#baseline-rules

Summary

This feature allows developers to align items within either flex or grid
layout by their last baseline, instead of their first. This is done via the
following properties: align-items: last baseline; /* flex/grid container */
justify-items: last baseline; /* grid container */ align-self: last
baseline; /* flex/grid item */ justify-self: last baseline; /* grid item */


Blink componentBlink>Layout
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ELayout>

TAG reviewNone - I don't believe CSS Align 3 ever went through Tag Review.
However I'm happy to file one and cc/ the specification editors.

TAG review statusNot applicable

Risks


Interoperability and Compatibility



*Gecko*: Shipped/Shipping (note - relatively basic support)

*WebKit*: Shipped/Shipping "It's complicated". WebKit currently parses
"align-items: last baseline" however doesn't support it currently in layout
(for Stable versions of the browser).
https://caniuse.com/?search=last%20baseline
<https://caniuse.com/?search=last+baseline> This is currently changing
however with recent commits by WebKit implementing the "last baseline"
behaviour. E.g. https://bugs.webkit.org/show_bug.cgi?id=245792

*Web developers*: No signals

*Other signals*:

Activation

This feature will likely be difficult to use initially for web developers
for a few reasons. Support and implementation status is patchy. While
adding tests for this feature...
https://wpt.fyi/results/css?label=master&label=experimental&aligned&view=subtest&q=flex-align-baseline%20or%20grid-align-baseline%20or%20grid-justify-baseline
<https://wpt.fyi/results/css?label=master&label=experimental&aligned=&view=subtest&q=flex-align-baseline+or+grid-align-baseline+or+grid-justify-baseline>
...existing implementations typically only supported relatively simple
cases well. This primarily was because various specifications which this
feature interacts with didn't specify what the last baseline of various
boxes should be. Additionally "@supports(align-items: last baseline)" will
return true for many versions of browsers that don't have any (or partial)
layout support for this feature. Web developers may rely on UA versions
and/or javascript to check actual support.


WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that
it has potentially high risk for Android WebView-based applications?



Debuggability

Basic CSS property debugging in DevTools.


Will this feature be supported on all six Blink platforms (Windows, Mac,
Linux, Chrome OS, Android, and Android WebView)?Yes

Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes
https://wpt.fyi/results/css?label=master&label=experimental&aligned&view=subtest&q=flex-align-baseline%20or%20grid-align-baseline%20or%20grid-justify-baseline
<https://wpt.fyi/results/css?label=master&label=experimental&aligned=&view=subtest&q=flex-align-baseline+or+grid-align-baseline+or+grid-justify-baseline>

Flag name--enable-experimental-web-platform-features or
--enable-blink-features=CSSLastBaseline

Requires code in //chrome?False

Tracking bughttps://bugs.chromium.org/p/chromium/issues/detail?id=885175

Estimated milestones

108 or 109

Anticipated spec changes

We filed multiple issues related to this feature - primarily for all the
different types of layout algorithms how to determine their last baseline
was underspecified.

Scroll container - https://github.com/w3c/csswg-drafts/issues/7660

Flexbox - https://github.com/w3c/csswg-drafts/issues/7641

Multicol - https://github.com/w3c/csswg-drafts/issues/7639

Tables - https://github.com/w3c/csswg-drafts/issues/7655

Fieldset - https://github.com/w3c/csswg-drafts/issues/7656

(and more).

All of these issues have been resolved, and added tests.

Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5093352798683136

Links to previous Intent discussionsIntent to prototype:
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJL3UpT5eVmfB6e-adc8exG1ouse25C_0A_2tn3fEVTwh-SetQ%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/cajl3upt5evmfb6e-adc8exg1ouse25c_0a_2tn3fevtwh-s...@mail.gmail.com>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAJL3UpRb9dPstEirAv6pqspLgyab9%2B6bonCEzMrDNumkVH7S0g%40mail.gmail.com.

Reply via email to