- From: dshin-moz via GitHub <sysbot+gh@w3.org>
- Date: Wed, 13 Nov 2024 13:01:20 +0000
- To: public-css-archive@w3.org
dshin-moz has just created a new issue for https://github.com/w3c/csswg-drafts: == [css-position-3] Absolute positioning - Is the new inset & auto-size behaviour web-compatible? == Implementing `justify-self` & `align-self` for abs-positioned elements, we ran into: * https://bugzilla.mozilla.org/show_bug.cgi?id=1930427 * https://bugzilla.mozilla.org/show_bug.cgi?id=1930850 Which has something to the effect of: ``` <style> .abs { align-self: stretch; height: auto; top: auto; bottom: auto; } </style> <div class="abs">Test</span> ``` `align-self: stretch` should be a no-op (At least for absolute elements not within flex/grid context) in the old behaviour, but **seems to be used by websites in the wild anyway** in the linked bugs: * [Virustotal](https://www.virustotal.com/gui/home/upload): `<uno-navbar>`'s shadow-root child * [SAP](https://api.sap.com/api/OP_WAREHOUSEORDER_0001/resource/Warehouse_Order): `opblock-summary-method` As per the new [absolute-positioning steps](https://drafts.csswg.org/css-position-3/#abspos-layout): 1. Calculate inset-modified containing block: * [Inset resolution](https://drafts.csswg.org/css-position-3/#resolving-insets): `stretch`'s [fallback alignment](https://drafts.csswg.org/css-align-3/#valdef-align-content-stretch) is `start`, so take the first case - static position is at `top: 0`, `bottom` is just set to 0. 1. [Resolving sizes](https://drafts.csswg.org/css-position-3/#abspos-auto-size): Definite available size is viewport, no min/max height is given, and since self-alignment is `stretch`, **auto size is stretch size**. 1. Auto margins: N/A 1. Alignment: Fits exactly in the available space As per the [old steps](https://drafts.csswg.org/css-position-3/#abs-non-replaced-height) 1. Everything is `auto`, margins zeroed out, `top` takes its static position value, which is zero 2. Height is [Auto heights for block formatting context roots](https://www.w3.org/TR/CSS2/visudet.html#root-height) - Distance between top of the topmost line box and bottom of the bottommost line box, so **auto size is basically a shrink-fit size**. 3. Solve for `bottom`, taking up whatever empty space Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/11195 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 13 November 2024 13:01:21 UTC