- From: Xiaocheng Hu via GitHub <sysbot+gh@w3.org>
- Date: Wed, 01 Feb 2023 23:06:23 +0000
- To: public-css-archive@w3.org
I don't see major issues with 3a60ac6d3f4dc76af96a8d6e8ecc4ec83105e2d4, but some minor ones: 1. What happens when we use `anchor(auto)` in a `@position-fallback` list? I think the correct behavior is to insert some flipped fallback position entries immediately after the current entry. 2. If the `anchor(auto)` is invalid (i.e. the other side is not `auto`), does it still add entries to the position fallback list? I think it should not. It doesn't make much sense when the base style is `{top: 100px; bottom: anchor(auto)}` and then we try fallback position `{top: anchor(auto); bottom: auto}` -- it's not properly flipping the element. 3. It doesn't work with how position fallback currently works. Currently, if an element uses `position-fallback`, then we never try to layout the element with its base (computed) style -- we start directly with the first fallback position. So in the [example](https://drafts4.csswg.org/css-anchor-1/#example-b75f9105) in the spec, the two are not really equivalent: ```css .foo { position: absolute; top: calc(.5em + anchor(--foo auto)); } ``` ```css .foo { position: absolute; top: calc(.5em + anchor(--foo bottom)); position-fallback: --flip; } @position-fallback --flip { @try { top: auto; bottom: calc(.5em + anchor(--foo top)); } } ``` In the second CSS, we'll always end up with the fallback position. To make this example work, if `anchor(auto)` is used in the base style, we actually add two entries: a copy of the base style, followed by the flipped style; If it's used in both axes, we add four entries where the first is a copy of the base style. Alternatively, we can change the [fallback position application algorithm](https://drafts4.csswg.org/css-anchor-1/#fallback-apply) into: try to use the base style first, and then if it overflows, try each fallback position. Not sure if it's a good idea... -- GitHub Notification of comment by xiaochengh Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/7757#issuecomment-1412872476 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 1 February 2023 23:06:24 UTC