What's new in web animations

Поділитися
Вставка
  • Опубліковано 5 жов 2024
  • Appropriate animations are a great way to help users build an accurate mental model of how a web page UI works and therefore increase usability of a web site. But it's important for a UI to feel polished and fluid to users. Shipping in Chrome is a collection of new APIs that help you build these frictionless and engaging experiences. Get a highlight of some of these new APIs: view transitions, scroll-driven animations, the linear easing function, and individual transform properties.
    Resources:
    View Transitions documentation and demos → goo.gle/io23-v...
    Scroll-driven animations documentation and demos → goo.gle/io23-s...
    Linear easing function generator → goo.gle/io23-l...
    Speaker: Bramus Van Damme
    Watch more:
    Watch all the Technical Sessions from Google I/O 2023 → goo.gle/IO23_s...
    Watch more Web Sessions → goo.gle/IO23_web
    All Google I/O 2023 Sessions → goo.gle/IO23_all
    Subscribe to Google Chrome Developers → goo.gle/Chrome...
    #GoogleIO

КОМЕНТАРІ • 49

  • @ChromeDevs
    @ChromeDevs  Рік тому +1

    Want to learn more about what's new for the web? Check out the Web Keynote at #GoolgeIO → goo.gle/IO23_webkey_pin

  • @paramsingh4104
    @paramsingh4104 Рік тому +10

    View transitions has been the most envied feature by me compared to native Android and iOS. Glad it finally landed, although late.

  • @mathnewph
    @mathnewph Рік тому +3

    Can't wait to be able to use thoses transition in vue !

  • @genaroibc
    @genaroibc Рік тому +3

    This is amazing Bramus ❤

  •  Рік тому +3

    After years of enjoying your blog, I finally know how to pronounce your name :)) thx for a great summary 🙏

    • @bramus
      @bramus Рік тому +1

      Thank you, Pavel.

  • @komakaze1
    @komakaze1 Рік тому +5

    All of these look interesting, but i'm particularly looking forward to the scroll and animation related features that could benefit parallax scrolling web animations.

  • @guanbo-yang
    @guanbo-yang Рік тому +6

    These features are game-changing😮😮

    • @bramus
      @bramus Рік тому +1

      Yes, it’s a very exciting time to be a front end developer 🤩

    • @TesterAnimal1
      @TesterAnimal1 Рік тому

      I can’t see how.
      As a front end developer concerned with real world user needs, this is all fancy swooshy things and fiddling round the edges.

    • @metamorph8976
      @metamorph8976 Рік тому +1

      @@TesterAnimal1 It's as much JS that won't be written nor loaded by the client, and it will also allow people who disable JS to view those "swooshy things and fiddling round the edges".

  • @starlederer
    @starlederer Рік тому +13

    14:08 this is very cool but are there plans to introduce logical directions for transforms (e.g. `translate-inline` `translate-block`)

    • @bramus
      @bramus Рік тому +7

      This is still being discussed within the CSS Working Group. Thanks for signalling interest, I’ll pass on the message :)

  • @akshar_dave
    @akshar_dave Рік тому +3

    Thank you all for this! 🥭

  • @ericnjanga3245
    @ericnjanga3245 Рік тому +2

    This is amazing!!! ❤❤❤

  • @amoose136
    @amoose136 Рік тому +3

    I honestly want the frameworks to take the easing function as defined in JS and then just bake it to CSS linear on build automatically so less JS is shipped but the developer experience is more flexible and you can still think in terms of functions and not a series of stops.

  • @savire.ergheiz
    @savire.ergheiz Рік тому +2

    So not before long we will have css files which is way bigger than JS. Good Job 😂

  • @dzienisz
    @dzienisz Рік тому +1

    10:16 nice explanation

  • @giorgiog2822
    @giorgiog2822 Рік тому +4

    This is amazing! Feel like i wasted so much time animating in JS haha
    I'm wondering if is there a way to communicate between JS and Css with this animations, i picture a case where when you end a transition you wanna trigger a function or dynamically create a new element.
    Last is there any thought about the control of how smooth is the page scrolling in css? (like inertia in some js libraries)

    • @bramus
      @bramus Рік тому +4

      In your JS you can listen to animation/transition end events to trigger other things.

  • @silberguy
    @silberguy Рік тому +3

    Is there an expected time that the features will be available for Firefox and safari?

  • @alfathmuqoddas6986
    @alfathmuqoddas6986 Рік тому +2

    this feature will significantly reduce javascript library used to handle animation! reduced js means increased lighthouse rating!

  • @jakearchibald
    @jakearchibald Рік тому +25

    First!

    • @yapet
      @yapet Рік тому +6

      Just as I was thinking “where is Jake?”. Here he is, in the comments

    • @bramus
      @bramus Рік тому

      👋

  • @kirillsundaen8810
    @kirillsundaen8810 Рік тому +1

    It's amazing!

  • @philip9677
    @philip9677 Рік тому +2

    what if the animate to page hasnt loaded yet

    • @bramus
      @bramus Рік тому +2

      There's a timeout. In case that is reached, the transition is skipped.

  • @jobiej7416
    @jobiej7416 Рік тому +1

    It’s great. But these features will be best in a pwa published to the play store because of safari

  • @cloudpuncher4615
    @cloudpuncher4615 Рік тому +3

    what happened to animation worklet API? being able to run an animation in another thread would be pretty handy...

    • @bramus
      @bramus Рік тому +1

      That API is currently not being worked on. Do note though, that Scroll-Driven Animations run off the main thread where possible.

  • @Atractiondj
    @Atractiondj 10 місяців тому +2

    When will Google buy apple and delete safari from the web?

  • @andrewskangah3710
    @andrewskangah3710 Рік тому +1

    All of these look great and all. But, Microsoft Edge is proving more efficient than Chrome these days, and I really want Chrome to fix its performance issues to remain in the game. Anybody agree with this? I love Google btw.

  • @mohammadaminrajabi1828
    @mohammadaminrajabi1828 5 місяців тому

    That's crazy.

  • @dzienisz
    @dzienisz Рік тому +5

    As always Safari webkit is lagging :( it's sad, Apple have so much money and resources to be on the same page as Google.

    • @bren.r
      @bren.r Рік тому +1

      They don’t innovate anymore. They don’t care about quality. They only know how to market well. They’re toast.

    • @theklr
      @theklr Рік тому

      I mean where’s subgrid though. Safari has been catching up in recent years, but they don’t follow only google’s direction. Go look for these in drafts and see the discussions.

  • @leularia
    @leularia Рік тому +2

    do we have pollyfill or something like i don't like the web because you can't use things

    • @bramus
      @bramus Рік тому +1

      For many of the features you don’t need a polyfill when you approach them as a progressive enhancement while providing basic fallbacks to older browsers. For Scroll-driven animations specifically there once was a polyfill in the works, but it’s currently on hold while our engineering team first works on finalising the Blink implementation.

  • @rinconfede
    @rinconfede Рік тому +1

    "I have a question about accessibility... is there any way to disable the "view transition API" or "scroll-driven animation" in the browser? I mean, what if people need to turn this off for any reason? (think of Epilepsy, migraines, etc., or even if the user doesn't want it, similar to cookies, for example)."

    • @clevermissfox
      @clevermissfox 9 місяців тому +2

      Yes usually developers put animations behind a function that checks whether the user has “prefers-reduced-motion” turned on in their browser. If the user has enabled this, the animations aren’t triggered.

  • @axios7776
    @axios7776 Рік тому +1

    Better late than never

  • @RR-bz8bi
    @RR-bz8bi 11 місяців тому +1

    the "back button" isn't a true "back button"

  • @realalphas
    @realalphas Рік тому +1

    How to use this with qwik?

    • @shawnbrian5805
      @shawnbrian5805 Рік тому +1

      Wrap your function which control page navigation in document.startViewTransition();
      Then, you will get a fade through transition.

    • @realalphas
      @realalphas Рік тому +1

      @@shawnbrian5805 Two month past, it is implemented in qwik. And still your solution will not work, because when you clicking a link it's function will not provide Promise. = )

  • @kklowd
    @kklowd Рік тому

    He's cute

    • @bramus
      @bramus Рік тому +1

      Cute wasn’t really what I was going for, but I’ll take the compliment nonetheless.

    • @nullstress
      @nullstress Рік тому +2

      @@bramus I think you're cool