Re: [csswg-drafts] [css-backgrounds-4][css-values-4] Align logical values for <position> with the ones defined in CSS Logical Properties (#549)

Iterating on the proposal of @tabatkins:

```ebnf
<position> = [
  [ left | center | right | x-start | x-end ] || [ top | center | bottom | y-start | y-end ]
|
  [ left | center | right | x-start | x-end | <length-percentage> ]
  [ top | center | bottom | y-start | y-end | <length-percentage> ]?
|
  [ [ left | center | right | x-start | x-end ] <length-percentage> ] &&
  [ [ top | center | bottom | y-start | y-end ] <length-percentage> ]
|
  [ block-start | block-end ] || [ inline-start | inline-end ]
|
  [ start | end ]{1, 2}
|
  [ [ block-start | block-end ] <length-percentage> ] &&
  [ [ inline-start | inline-end ] <length-percentage> ]
|
  [ [ start | end ] <length-percentage> ]{1, 2}
]
```

Changes to Tab's suggestion:

* `start` or `end` can be used as a single keyword to refer to the block and inline start corner or end corner.
* An offset can be applied to `start` and `end`. (like for other keywords; syntax sugar for the `block-*` and `inline-*` keywords)
* An offset can be applied to `center`. (like for other keywords; syntax sugar for `calc(50% + <offset>`)
* Removed redundant `center` from `[ block-start | block-end | center ] || [ inline-start | inline-end | center ]` as they are already part of the physical keywords syntax.

Sebastian

-- 
GitHub Notification of comment by SebastianZ
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/549#issuecomment-1659203936 using your GitHub account


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

Received on Monday, 31 July 2023 21:35:50 UTC