Re: [csswg-drafts] [scroll-animations-1] Entry/Exit Transitions for View Timeline effects (#7044)

Summary of where I think we're at from the [meeting notes](https://lists.w3.org/Archives/Public/www-style/2022Jun/0013.html):

- Remove the `phase` API from Web Animations 1, and remove the before/after concepts, keeping just active/inactive states.
- Add the concept of named timeline phases. Certain types of timelines (such as ViewTimelines) will provide such phases. (In the future, other types of timelines may offer named phases, or we might add the ability to have custom named phases.)
- Rename inactive/active to states in the spec (not user-exposed) to avoid conflating with phases. Leave this all open for bikeshedding.
- ViewTimelines will provide entry/exit/contain as named phases.
- Add ability for a keyframe to name not just a percent, but a keyword and a percent, representing that percentage progress through that named phase of the timeline. `@keyframes { ... exit 0% { ... } ... }` See [flackr's comment](https://github.com/w3c/csswg-drafts/issues/7044#issuecomment-1144946715)
- Add ability to specify start and end delays in terms of position in a named phase position (keyword + percentage), e.g. `animation-delay: contain 0%; animation-end-delay: contain 100%` attaches the animation between the 0% and 100% points in the contain phase.
- Add shorthand that expands a phase name to 0% start delay and 100% end delay. E.g. `animation-phase: contain` expands to `animation-delay: contain 0%; animation-end-delay: contain 100%`.
- Add an API to timelines to allow retrieving information about whether we're in a named phase and how far into it, in consideration that multiple named phases might be able to overlap. E.g. `AnimationTimeline.getTime()` which returns `.currentTime` by default, and returns time within the named phase if one is passed in.
- Interaction with stickypos might need more thought.


-- 
GitHub Notification of comment by fantasai
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/7044#issuecomment-1175722383 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Wednesday, 6 July 2022 02:55:05 UTC