Vés al contingut principal

Generador d'easing CSS Cubic-Bezier de franc

Dissenya corbes d'easing CSS arrossegant punts de control, previsualitza el moviment en viu i copia el valor cubic-bezier(). Inclou presets de sobreimpuls/rebot.

Funciona sense connexió un cop carregat

Arrossegueu els punts blau verdós i rosa per donar forma a la corba

Punts de control
Previsualització del moviment
Transició d'amplada
Valor CSS
transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);

Predefinits

Els punts rosa i blau verdós poden sortir per sobre o per sota del quadre (Y fora de 0–1) per crear efectes de ‚sobrepassament' / rebot com back-out i anticipate. X es manté dins de 0–1 (el temps no pot invertir-se).

Usos habituals

  • Alleugement de transició CSS personalitzatDissenyau alleugement de sensació natural per als efectes de manteniment, menús i transicions de UI.
  • Animacions de rebota i superacióCrea un moviment moll/rebota divertit arrossegant els punts de control més allà de la caixa.
  • Alleugement per a animacions @keyframesTrieu la funció correcta de temporització d'animació per a animacions CSS keyframe.
  • Valors d'alleugement per a biblioteques d'animació JSObtingueu valors de Bezier cúbic per a GSAP, Framer Motion, anime.js i més.
  • Comprendre com funciona l'alleugementVeure la relació entre una corba de Bezier i el moviment que produeix.

Com funciona

L'editor està construït completament al navegador utilitzant l'estat de React i SVG — cap biblioteca gestiona la matemàtica de la corba. Dos punts de control arrossegables defineixen un camí SVG de Bezier cúbic, i el propi motor d'animació CSS del navegador executa la previsualització del moviment injectant el valor cubic-bezier() resultant directament en una regla @keyframes.

  1. 1
    Arrossega o escriu punts de control
    Dues nanses (P1 en verd blavós, P2 en rosa) es troben en un canvas SVG. Arrossegar utilitza l'API Pointer Events amb setPointerCapture perquè la nansa segueixi el teu dit o cursor fins i tot fora del límit de l'SVG. També pots ajustar les nanses amb les tecles de fletxa o escriure valors exactes als camps numèrics x1/y1/x2/y2.
  2. 2
    L'SVG dibuixa la corba en temps real
    La corba és un únic element <path> SVG l'ordre C (Bezier cúbic) del qual es torna a calcular a partir de les quatre coordenades de punts de control a cada actualització d'estat. Sense canvas, sense biblioteca externa — el propi renderitzador SVG del navegador dibuixa el camí directament.
  3. 3
    El motor CSS del navegador previsualitza el suavitzat
    Tres animacions en directe (un punt lliscant, una transició d'amplada, i una escala) executen @keyframes de CSS amb el valor cubic-bezier() injectat en línia. El propi motor d'animació del navegador interpreta la corba, així que el que veus és exactament el que produirà el teu CSS de producció.
  4. 4
    Copia el fragment en la sintaxi del teu framework
    Les pestanyes formaten els mateixos quatre números com una transition-timing-function de CSS, una classe de valor arbitrari de Tailwind, un array d'easing de Framer Motion, o una cadena d'easing d'anime.js. El fragment s'escriu al porta-retalls amb navigator.clipboard. La corba també es codifica al hash de l'URL (#b=x1,y1,x2,y2) perquè la puguis compartir o desar a preferits.

Eines relacionades

Preguntes freqüents