[csswg-drafts] [css-backgrounds-4] How to set declarations of `background-position` containing a logical keyword? (#9253)

cdoublev has just created a new issue for https://github.com/w3c/csswg-drafts:

== [css-backgrounds-4] How to set declarations of `background-position` containing a logical keyword? ==
*Context* 

  - the grammar of `background-position` as a shorthand is still under [discussion](https://github.com/w3c/csswg-drafts/issues/549)
  - there is [some](https://developer.mozilla.org/en-US/docs/Web/CSS/background-position-x#browser_compatibility) browser support of `background-position-x`/`background-position-y`
  - there does not seem to be a pressing need to implement this feature

---

When the specified value includes a logical keyword, the text does not seem to know what it should exactly happen yet:

  > Issue 2: Specify the value assignment in more detail. Should expand just like Level 3.
  >
  > Issue 3: Specify what happens to set of properties that are not set. Maybe they’re just not set?

https://drafts.csswg.org/css-backgrounds-4/#propdef-background-position

Logical longhands must be set after physical longhands, isn't it? And physical longhands must be set after logical longhands if physical keywords are specified.

If I am not mistaken, step 3.4.2 of [*serialize a CSS declaration block*](https://drafts.csswg.org/cssom-1/#serialize-a-css-declaration-block) would need to be changed if the set of properties that is not explicitly declared is not reset to its initial value:

  > 2. If all properties that map to `shorthand` are not present in `longhands`, continue with the steps labeled `shorthand loop`.

For example: if `shorthand` maps to longhands included in a logical property group, and all longhands of the same mapping logic have a declaration in `longhands` (excluding longhand declarations that do not map to `shorthand`) that come before any other declaration with another mapping logic, continue with the procedure.

But what is the benefit of, I guess, preserving longhands declarations that would have been set before setting the shorthand with values for longhands that follow a different mapping logic?

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/9253 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Monday, 28 August 2023 07:18:49 UTC