Skip to content

Commit 44575ac

Browse files
committed
[web-animations-1][web-animations-2][editorial] Mention that we need to define the overridden implicit keyframe generation behavior from scroll animations
See #2081.
1 parent e3197c5 commit 44575ac

2 files changed

Lines changed: 23 additions & 34 deletions

File tree

web-animations-1/Overview.bs

Lines changed: 15 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -4062,6 +4062,21 @@ Keyframe effects {#keyframe-effects}
40624062
and a [=composite operation=] of [=composite operation add|add=],
40634063
and append it to the end of |property-specific keyframes|.
40644064

4065+
<div class=note>
4066+
4067+
Other specifications may override
4068+
the implicit keyframe generation behavior
4069+
in the preceding two steps.
4070+
For example, the
4071+
[[scroll-animations-1#named-range-keyframes|named timeline range keyframe selectors]]
4072+
defined by Scroll Animations
4073+
can cause these implicit keyframes not to be generated.
4074+
4075+
A future level of this specification should
4076+
incorporate the overridden behavior directly into this algorithm.
4077+
4078+
</div>
4079+
40654080
1. Let |interval endpoints| be an empty sequence of keyframes.
40664081

40674082
1. Populate |interval endpoints| by following the steps
@@ -4213,40 +4228,6 @@ Keyframe effects {#keyframe-effects}
42134228
produced by the transition on 'font-size'.
42144229
</div>
42154230

4216-
<div class=issue>
4217-
In the presence of certain easing functions,
4218-
the input [=iteration progress=] to an animation effect
4219-
is not limited to the range [0, 1].
4220-
Currently, however, keyframe offsets <em>are</em> limited to the range [0, 1]
4221-
and property values are simply extrapolated
4222-
for input [=iteration progress=] values outside this range.
4223-
4224-
We have considered removing this restriction
4225-
since some cases exist where it is useful
4226-
to be able to specify non-linear changes in property values
4227-
at [=iteration progress=] values outside the range [0, 1].
4228-
One example is an animation that interpolates from green to yellow
4229-
but has an overshoot easing function
4230-
that makes it temporarily interpolate “beyond” yellow to red
4231-
before settling back to yellow.
4232-
4233-
While this effect could be achieved by
4234-
modification of the keyframes and easing function,
4235-
this approach seems to break the model's separation
4236-
of timing concerns from animation effects.
4237-
4238-
It is not clear how this effect should be achieved
4239-
but we note that allowing keyframe offsets outside [0, 1]
4240-
can make the currently specified behavior,
4241-
where keyframes at offset 0 and 1 are synthesized as necessary,
4242-
inconsistent.
4243-
4244-
See <a href="http://lists.w3.org/Archives/Public/public-fx/2013AprJun/0184.html">section 4
4245-
(Keyframe offsets outside [0, 1]) of minuted discussion from Tokyo 2013 F2F</a>.
4246-
4247-
<a href="https://github.com/w3c/csswg-drafts/issues/2081">&lt;https://github.com/w3c/csswg-drafts/issues/2081&gt;</a>
4248-
</div>
4249-
42504231
Combining effects {#combining-effects}
42514232
-----------------
42524233
<div class=informative-bg>

web-animations-2/Overview.bs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2136,6 +2136,14 @@ Update the description of an effect that targets a non-animated property as:
21362136

21372137
<h4 id="the-effect-value-of-a-keyframe-animation-effect">The effect value of a keyframe effect</h4>
21382138

2139+
Issue: The implicit keyframe generation steps in Web Animations Level 1
2140+
need to be reconciled with the behavior defined for
2141+
[[scroll-animations-1#named-range-keyframes|named timeline range keyframe selectors]]
2142+
in Scroll Animations.
2143+
Scroll Animations currently overrides those steps but that overridden behavior
2144+
should be incorporated directly in this algorithm.
2145+
See <a href="https://github.com/w3c/csswg-drafts/issues/14309">issue 14309</a>.
2146+
21392147
The procedure for computing the <a>effect value</a> of a single property
21402148
referenced by a <a>keyframe effect</a> as one of its <a>target properties</a>,
21412149
for a given <var ignore=''>iteration progress</var>, <var>current iteration</var> and

0 commit comments

Comments
 (0)