@@ -713,7 +713,7 @@ It has the following syntax:
713713<pre class="prod">
714714 <dfn><step-easing-function></dfn> = ''step-start'' | ''step-end'' | <<steps()>>
715715
716- <dfn>steps()</dfn> = steps( <<integer>> , <<step-position>> ?)
716+ <dfn>steps()</dfn> = steps( <<integer>> , <<step-position>> ?)
717717 <dfn type><step-position></dfn> = ''jump-start'' | ''jump-end'' | ''jump-none'' | ''jump-both''
718718 | ''start'' | ''end''
719719</pre>
@@ -745,31 +745,47 @@ The meaning of each value is as follows:
745745 </figure>
746746
747747 : ''steps( <integer>, <step-position>? )''
748- :: The first parameter specifies the number of intervals in the function.
749- It must be a positive integer greater than 0
750- unless the second parameter is <a value for="steps()">jump-none</a>
751- in which case it must be a positive integer greater than 1.
752-
753- The second parameter, which is optional, specifies the [=step position=]
754- using one of the following values:
755-
756- <dl dfn-type=value dfn-for="<step-position> , steps()">
757- : <dfn>jump-start</dfn>
758- :: The first rise occurs at [=input progress value=] of 0.
759- : <dfn>jump-end</dfn>
760- :: The last rise occurs at [=input progress value=] of 1.
761- : <dfn>jump-none</dfn>
762- :: All rises occur within the range (0, 1).
763- : <dfn>jump-both</dfn>
764- :: The first rise occurs at [=input progress value=] of 0
765- and the last rise occurs at [=input progress value=] of 1.
766- : <dfn>start</dfn>
767- :: Behaves as ''jump-start'' .
768- : <dfn>end</dfn>
769- :: Behaves as ''jump-end'' .
770- </dl>
771-
772- If the second parameter is omitted, the value ''end'' is assumed.
748+ :: Divides the input interval into a number of equal steps
749+ specified by the <<integer>> .
750+ Within each interval, the [=output progress value=] is constant,
751+ and is determined according to the <<step-position>> keyword.
752+ If omitted, the <<step-position>> keyword defaults to ''end'' .
753+
754+ If the <<step-position>> is ''jump-none'' ,
755+ the <<integer>> must be at least 2,
756+ or the function is invalid.
757+ Otherwise,
758+ the <<integer>> must be at least 1,
759+ or the function is invalid.
760+
761+ The <<step-position>> keywords are:
762+
763+ <dl dfn-type=value dfn-for="<step-position> , steps()">
764+ : <dfn>jump-start</dfn>
765+ :: The first interval has an [=output progress value=] of <code> 1/steps</code> ,
766+ and subsequent intervals rise by <code> 1/steps</code> .
767+
768+ (It "jumps at the start", with no step returning 0.)
769+ : <dfn>jump-end</dfn>
770+ :: The first interval has an [=output progress value=] of <code> 0</code> ,
771+ and subsequent intervals rise by <code> 1/steps</code> .
772+
773+ (It "jumps at the end", with no step returning 1.)
774+ : <dfn>jump-none</dfn>
775+ :: The first interval has an [=output progress value=] of <code> 0</code> ,
776+ and subsequent intervals rise by <code> 1/(steps-1)</code> .
777+
778+ (It "never jumps", with steps returning both 0 and 1.)
779+ : <dfn>jump-both</dfn>
780+ :: The first interval has an [=output progress value=] of <code> 1/(steps+1)</code> ,
781+ and subsequent intervals rise by <code> 1/(steps+1)</code> .
782+
783+ (It "jumps at both ends", with no steps returning 0 or 1.)
784+ : <dfn>start</dfn>
785+ :: Behaves as ''jump-start'' .
786+ : <dfn>end</dfn>
787+ :: Behaves as ''jump-end'' .
788+ </dl>
773789</dl>
774790
775791The ''jump-*'' keywords values are illustrated below:
@@ -793,8 +809,10 @@ The ''jump-*'' keywords values are illustrated below:
793809 <tr><td> ''steps(3, jump-none)'' <td><div class=easing-track style="--easing:steps(3, jump-none)"></div>
794810 <tr><td> ''steps(3, jump-both)'' <td><div class=easing-track style="--easing:steps(3, jump-both)"></div>
795811 </table>
796- <figcaption>
812+ <figcaption style="max-width: 80%;" >
797813 The above easing functions in action, with a ''linear'' provided for comparison.
814+ Each ''steps(3, ...)'' function divides the animation into three constant periods;
815+ they differ only on what the value is within each period.
798816 </figcaption>
799817</figure>
800818
0 commit comments