Open ewilligers opened 5 years ago
Current implementations observed using https://jsfiddle.net/ericwilligers/f243bvn8/
Firefox / Edge 18: When serializing specified or resolved value, every author-supplied value appears, in the author-supplied order.
Blink / Safari: When serializing specified value, every author-supplied value appears, in the author-supplied order. When serializing resolved value, each counter-name only appears once, in arbitrary order (e.g. "end" before "begin"). Blink's implementation uses a hash table (shared by counter-increment and counter-reset).
As discussed recently,
counter-reset
etc. can have repeated counter names.For set/reset, only the last value for each name is relevant. For increment, only the total value for each name is relevant.
For serialization of specified and computed values, should implementations preserve repetitions?
For distinct names, should order be preserved, or should we use lexicographic order, or is order arbitrary?
Suppose we have
counter-reset: foo 1 bar 2 foo 3 bar 4;
Should
getComputedStyle().counterReset
return"foo 1 bar 2 foo 3 bar 4"
or"foo 1 foo 3 bar 2 bar 4"
or"bar 2 bar 4 foo 1 foo 3"
or"foo 3 bar 4"
or"bar 4 foo 3"
, or are either of the last two OK (e.g. if an implementation uses hash tables) ?