Re: [csswg-drafts] [cssom] Specify serialization principle for shorthands (#878)

I expressed myself badly because I do not have a strong opinion on whether a shorthand should serialize even if one of its sub-property is `initial`. I wrote this based on what I observed from the output in Chrome and because `initial` is equivalent to the initial value (I think). Actually I think it makes shorthand serialization easier to implement.

I guess you also both think that `border` should not serialize when `border-image-outset` is `0px` instead of `0` (initial value).

> Much of this should be specified generally in CSSOM rather than specified as a principle for other specifications to follow. I'm not sure that it is, though.

Ok. Sorry to be off topic then. I am pretty sure it is not defined in CSSOM.

<details>
<summary>Off topic</summary>

I would expect to see these "rules" in *serialize a CSS value*, in which the serialization principles are also defined.

I cannot find your comment in which you list these "rules". I was quite relieved to realize that it was identical to mine (I think).

> A shorthand must serialize to:
>
> - `''` if it *cannot exactly represent the values of all the properties in list*
>   - some longhand is not declared
>   - some longhand is declared with a different priority
>   - some longhand is declared with a CSS-wide keyword (except if all are declared with the same keyword)
>   - some longhand is declared with a substitution value of its own
>   - some longhand is a reset-only sub-property declared with a value that is not its initial value
>   - some longhand is declared with a value that the shorthand cannot represent according to its grammar
> - the (loose) equal CSS-wide keyword declared for all its longhands
> - the (strict) equal pending-substitution value declared for all its longhands
> - the value composed from the declaration values for its longhand sup-properties according to the shorthand grammar and the shortest representation principle

</details>

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


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

Received on Wednesday, 7 September 2022 19:28:10 UTC