TGViewer
Заметки про React Заметки про React @ru_react_notes · 3.43K subscribers
Post #458 3.8K
Вам все еще нужен Framer Motion?

Мэтт Перри, автор библиотеки Framer Motion, в своем блоге поделился о новых фичах в CSS. Благодаря этим фичам возможно вам больше не понадобится библиотека Framer Motion.
Автор сравнил популярные виды анимаций в Framer Motion и как их можно реализовать через CSS:

- Вводная анимация. Чтобы сделать анимацию при появлении элемента в документе или при загрузке страницы, можно использовать CSS правило @starting-style. Это правило определяет первоначальные стили, из которых элемент будет анимироваться:


#my-element {
opacity: 1;
transition: opacity 0.5s;

@starting-style {
opacity: 0;
}
}


- Независимая трансформация. Появятся свойства translate, scale и rotate для независимой трансформации элемента.


button {
translate: 0px 0px;
transition:
translate 0.2s ease-out,
scale 0.5s ease-in-out;
}

button:hover {
scale: 1.2;
}


- Spring анимация. Для создания spring анимации можно использовать CSS функцию linear(). Функция принимает серию точек и линейно интерполирует между ними. Чтобы не писать серию точек вручную, используйте онлайн генераторы функции linear().

- Анимация по скроллу. В CSS появились две timeline анимации scroll() и view(). Их можно назначить в свойство animation-timeline для управления анимацией посредством скролла, а не времени:


div {
animation-name: fadeAnimation;
animation-timeline: scroll();
}


- Бонус, анимация высоты. В CSS нет возможности анимировать в/из auto, но CSS5 функция calc-size позволит это сделать:


li {
height: 0px;
transition: height 0.3s ease-out;

.open {
height: calc-size(auto);
}
}


https://motion.dev/blog/do-you-still-need-framer-motion
Motion Do you still need Framer Motion? | Motion Magazine In the five years since Framer Motion was released, CSS animation APIs have come a long way. Do you still need to use Framer Motion?
  • 👍 27
  • 🔥 9
More from @ru_react_notes
  1. Jun 24, 2025Реактивность – это легко Стандартный useContext заставляет обновляться все компоненты-потр…
  2. Jun 17, 2025Остерегайтесь скрытых проблем при работе с search params Типо-безопасность — это только ве…
  3. Jun 4, 2025Почему Error Boundary, а не просто try/catch для компонентов В React нельзя использовать t…
  4. May 29, 2025Анонс TypeScript Native Вышла превью версия TypeScript написанная на Go. Ее можно установи…
  5. May 27, 2025Управление фокусом в React с помощью flushSync Установить фокус на инпуте сразу в React мо…
  6. May 15, 2025TanStack DB TanStack представила новую библиотеку – TanStack DB – реактивный клиентский ст…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →