@@ -3190,56 +3190,61 @@ Animation effects {#animation-effects}
31903190 a <dfn>playback direction</dfn> parameter
31913191 which takes one of the following values:
31923192
3193- * normal,
3194- * reverse,
3195- * alternate, or
3196- * alternate-reverse.
3193+ <dl dfn-for="playback direction">
31973194
3198- The semantics of these values are incorporated into
3199- the calculation of the [=directed progress=] which follows.
3200-
3201- <div class=informative-bg>
3202- <em> This section is non-normative</em>
3203-
3204- A non-normative definition of these values is as follows:
3205-
3206- : normal
3195+ : <dfn>normal</dfn>
32073196 ::
32083197 All iterations are played as specified.
32093198
3210- : reverse
3199+ : <dfn> reverse</dfn>
32113200 ::
32123201 All iterations are played in the reverse direction
32133202 from the way they are specified.
32143203
3215- : alternate
3204+ : <dfn> alternate</dfn>
32163205 ::
32173206 Even iterations are played as specified;
32183207 odd iterations are played in the reverse direction
32193208 from the way they are specified.
32203209
3221- : alternate-reverse
3210+ : <dfn> alternate-reverse</dfn>
32223211 ::
32233212 Even iterations are played in the reverse direction
32243213 from the way they are specified;
32253214 odd iterations are played as specified.
32263215
3227- </div>
3216+ </dl>
3217+
3218+ The semantics of these values are incorporated into
3219+ the calculation of the [=directed progress=]
3220+ in [[#calculating-the-directed-progress]] .
32283221
3229- ### Time transformations ### {#time-transformations}
3222+ ### Easing (effect timing transformations) ### {#time-transformations}
32303223
32313224 It is often desirable to control the rate
32323225 at which an [=animation effect=] progresses.
32333226 For example, easing the rate of animation
32343227 can create a sense of momentum and produce a more natural effect.
3235- The CSS Easing Functions Module [[!CSS-EASING-1]]
3228+ The <a href="https://www.w3.org/TR/css-easing/"> CSS Easing Functions Module</a>
32363229 defines [=timing functions=] for this purpose.
3230+ [[!CSS-EASING-1]]
32373231
3238- [=Animation effects=] have
3239- one [=timing function=] associated with them.
3240- The default [=timing function=]
3232+ [=Animation effects=] each have
3233+ an <dfn for="animation effect">effect timing function</dfn> ,
3234+ which is a [=timing function=]
3235+ used to transform progress across the entirety of each iteration.
3236+ See [[#calculating-the-transformed-progress]] .
3237+
3238+ The default [=effect timing function=]
32413239 is the [=linear timing function=] .
32423240
3241+ Note: Specific [[#types-of-animation-effects|types of animation effects]]
3242+ may provide additional time transformations.
3243+ For example, [=keyframe effects=] can provide
3244+ [=keyframe-specific timing functions=]
3245+ that can apply a [=timing function=]
3246+ specifically between two adjacent keyframes.
3247+
32433248Calculating progress {#core-animation-effect-calculations}
32443249--------------------
32453250
@@ -3470,19 +3475,21 @@ Calculating progress {#core-animation-effect-calculations}
34703475
34713476 <dl class=switch>
34723477
3473- : If [=playback direction=] is <code> normal </code> ,
3478+ : If [=playback direction=] is [=playback direction/normal=] ,
34743479 ::
34753480 Let the |current direction| be forwards.
34763481
3477- : If [=playback direction=] is <code> reverse </code> ,
3482+ : If [=playback direction=] is [=playback direction/reverse=] ,
34783483 ::
34793484 Let the |current direction| be reverse.
34803485
3481- : Otherwise,
3486+ : Otherwise
3487+ (the [=playback direction=] is
3488+ [=playback direction/alternate=] or [=playback direction/alternate-reverse=] )p,
34823489 ::
34833490 1. Let |d| be the [=current iteration index=] .
34843491
3485- 1. If [=playback direction=] is <code> alternate-reverse</code>
3492+ 1. If [=playback direction=] is [=playback direction/ alternate-reverse=]
34863493 increment |d| by 1.
34873494
34883495 1. If <code><var> d</var> % 2 == 0</code> ,
@@ -3520,7 +3527,7 @@ Calculating progress {#core-animation-effect-calculations}
35203527 and <var> going forwards</var> is false.
35213528
35223529 1. Return the result of evaluating
3523- the [=animation effect=] ’s [= timing function=]
3530+ the [=effect timing function=]
35243531 passing [=directed progress=] as the <a spec=css-easing>input progress value</a>
35253532 and |before flag| as the <a spec=css-easing>before flag</a> .
35263533
@@ -3748,11 +3755,13 @@ Keyframe effects {#keyframe-effects}
37483755 or have unsupported values is defined in
37493756 [[#the-effect-value-of-a-keyframe-animation-effect]] .
37503757
3751- Each keyframe also has a [=timing function=] associated with it
3758+ Each keyframe also has a <dfn>keyframe-specific timing function</dfn>
3759+ associated with it, which is a [=timing function=]
37523760 that is applied to the period of time between
37533761 the keyframe on which it is specified
37543762 and the <em> next</em> keyframe in the list.
3755- The [=timing function=] specified on the last keyframe in the list
3763+
3764+ Note: The [=timing function=] specified on the last keyframe in the list
37563765 is never applied.
37573766
37583767 Each [=keyframe=] may have a <dfn>keyframe-specific composite operation</dfn>
0 commit comments