[Webkit-unassigned] [Bug 187839] Hardware fill-forwards animation and transitions don't interact correctly

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed May 20 05:59:30 PDT 2020


https://bugs.webkit.org/show_bug.cgi?id=187839

--- Comment #5 from Antoine Quint <graouts at webkit.org> ---
There may however be another orthogonal issue: whether the transition should be started at all. Currently, this test runs differently in Safari, Chrome and Firefox.

In Safari, this starts a transition from `transform: none` to `transform: translate(100px,100px)`. Safari is only considering unanimated style values.

In Firefox, this starts a transition from `transform: none` to `transform: translateX(25px)`. Firefox is considering the animated value.

In Chrome, no transition starts, I’m not sure why because the current style is definitely different from the style during the previous style change, animated or otherwise.

Selectively quoting from the CSS Transitions spec (https://www.w3.org/TR/css-transitions-1/#starting):

"Otherwise, define the before-change style as the computed values of all properties on the element as of the previous style change event, except with any styles derived from declarative animations such as CSS Transitions, CSS Animations, and SMIL Animations updated to the current time."

My reading of this is that the before-change style at ~500ms should be the value set by the currently-running CSS Animation at ~500ms, so `transform: translateX(25px)`.

"Likewise, define the after-change style as the computed values of all properties on the element based on the information known at the start of that style change event, but using the computed values of the animation-* properties from the before-change style, excluding any styles from CSS Transitions in the computation, and inheriting from the after-change style of the parent."

This sentence really did my head in :) I think it means that the after-change style is also set by the currently-running CSS Animation at ~500ms, so `transform: translateX(25px)` as well.

This would lead me to believe that Chrome has the correct behavior here and that there is no CSS Transition started since both the before-change and after-change styles have the same value for `transform`.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20200520/90943f69/attachment-0001.htm>


More information about the webkit-unassigned mailing list