@@ -169,8 +169,6 @@ Commas and Semicolons in Functions</h4>
169169 * <<whole-value>>
170170 * <<declaration-value>>
171171
172- Issue: The functions defined in this spec with semicolons in their grammar
173- need fixing to just use commas, now.
174172
175173<!-- Big Text: url
176174
@@ -602,7 +600,7 @@ Interpolated Property Values: the ''mix()'' notation</h3>
602600
603601 <pre class="prod">
604602 <dfn><<mix()>></dfn> =
605- mix( <<progress>> ';' <<whole-value>> ';' <<whole-value>> ) |
603+ mix( <<progress>> , <<whole-value>> , <<whole-value>> ) |
606604 mix( <<progress>> && of <<'animation-name'>> )
607605 </pre>
608606
@@ -751,7 +749,7 @@ Selecting the First Supported Value: the ''first-valid()'' notation</h3>
751749 as the whole value of the property it's used in.
752750
753751 <pre class=prod>
754- <dfn><first-valid()></dfn> = first-valid( <<declaration-value>> [ ';' <<declaration-value>> ]* )
752+ <dfn><first-valid()></dfn> = first-valid( <<declaration-value>> # )
755753 </pre>
756754
757755 If none of the arguments represent a valid value for the property,
@@ -800,13 +798,9 @@ Toggling Between Values: ''toggle()''</h3>
800798 The syntax of the ''toggle()'' expression is:
801799
802800 <pre class=prod>
803- <dfn><<toggle()>></dfn> = toggle( <<whole-value>> [ ';' <<whole-value>> ]+ )
801+ <dfn><<toggle()>></dfn> = toggle( <<whole-value>> # )
804802 </pre>
805803
806- Note: This [=functional notation=] uses semicolons to separate arguments
807- rather than the more typical comma
808- because the values themselves can contain commas.
809-
810804 The ''toggle()'' notation is a <<whole-value>> .
811805 However, it is not allowed to be nested,
812806 nor may it contain ''attr()'' or ''calc()'' notations;
@@ -838,7 +832,7 @@ Toggling Between Values: ''toggle()''</h3>
838832
839833
840834 Note: This means that repeating values in a ''toggle()'' short-circuits the list.
841- For example ''toggle(1em; 2em; 1em; 4em)'' will be equivalent to ''toggle(1em; 2em)'' .
835+ For example ''toggle(1em, 2em, 1em, 4em)'' will be equivalent to ''toggle(1em; 2em)'' .
842836
843837 <!-- Issue: Should this short-circuiting affect the computed value? -->
844838
@@ -847,7 +841,7 @@ Toggling Between Values: ''toggle()''</h3>
847841 This is similar to the ''inherit'' keyword,
848842 which works even on non-inherited properties.
849843
850- Note: That the <a href="https://www.w3.org/TR/CSS21/cascade.html# computed-value">computed value</a> of a property is an abstract set of values,
844+ Note: That the [= computed value=] of a property is an abstract set of values,
851845 not a particular serialization [[!CSS21]] ,
852846 so comparison between computed values should always be unambiguous and have the expected result.
853847 For example,
@@ -871,10 +865,10 @@ Toggling Between Values: ''toggle()''</h3>
871865 is equivalent to the following longhand declarations:
872866
873867 <pre>
874- margin-top: toggle(1px; 4px; 1px);
875- margin-right: toggle(2px; 4px; 5px);
876- margin-bottom: toggle(1px; 4px; 4px);
877- margin-left: toggle(2px; 4px; 5px);
868+ margin-top: toggle(1px, 4px, 1px);
869+ margin-right: toggle(2px, 4px, 5px);
870+ margin-bottom: toggle(1px, 4px, 4px);
871+ margin-left: toggle(2px, 4px, 5px);
878872 </pre>
879873
880874 Note that, since ''1px'' appears twice in the top margin and ''4px'' appears twice in bottom margin,
@@ -884,10 +878,10 @@ Toggling Between Values: ''toggle()''</h3>
884878 as the longhand declarations below:
885879
886880 <pre>
887- margin-top: toggle(1px; 4px);
888- margin-right: toggle(2px; 4px; 5px);
889- margin-bottom: toggle(1px; 4px);
890- margin-left: toggle(2px; 4px; 5px);
881+ margin-top: toggle(1px, 4px);
882+ margin-right: toggle(2px, 4px, 5px);
883+ margin-bottom: toggle(1px, 4px);
884+ margin-left: toggle(2px, 4px, 5px);
891885 </pre>
892886
893887 which may not be what was intended.
@@ -1388,7 +1382,7 @@ Picking a Random Item From a List: the ''random-item()'' function</h3>
13881382 from among its list of items.
13891383
13901384 <pre class=prod>
1391- <random-item()> = random-item( <<random-caching-options>> ';' <<declaration-value>> ? [ ';' <<declaration-value>> ? ]* )
1385+ <random-item()> = random-item( <<random-caching-options>> , [ <<declaration-value>> ? ]# )
13921386 </pre>
13931387
13941388 The <em> required</em> <<random-caching-options>>
@@ -1430,16 +1424,10 @@ Picking a Random Item From a List: the ''random-item()'' function</h3>
14301424 is much easier to do accidentally,
14311425 since only the number of arguments is used to distinguish instances.
14321426
1433- The remaining arguments are arbitrary sequences of CSS values,
1434- separated by semicolons.
1427+ The remaining arguments are arbitrary sequences of CSS values.
14351428 The ''random-item()'' function resolves to one of these sequences,
14361429 chosen uniformly at random.
14371430
1438- Note: Unlike most functions in CSS,
1439- ''random-item()'' separates its arguments with semicolons,
1440- rather than commas,
1441- because its arguments can contain commas themselves.
1442-
14431431 The ''random-item()'' function is an [=arbitrary substitution function=] ,
14441432 like ''var()'' .
14451433
0 commit comments