Gå til hovedindhold

Gratis CSS Cubic-Bezier-easinggenerator

Design CSS-easingkurver ved at trække kontrolpunkter, forhåndsvis bevægelsen live og kopiér cubic-bezier()-værdien. Inkluderer overshoot/bounce-forudindstillinger.

Virker offline, når den er indlæst

Træk i teal- og rosa-håndtagene for at forme kurven

Kontrolpunkter
Bevægelsesforhåndsvisning
Breddeovergang
CSS-værdi
transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);

Forudindstillinger

De rosa og teal-håndtag kan trækkes over eller under boksen (Y uden for 0–1) for at skabe overskridnings-/spjæteffekter som back-out og anticipate. X forbliver inden for 0–1 (tid kan ikke gå baglæns).

Almindelige anvendelser

  • Brugerdefinerede CSS-overgangeDesign naturligt følende åftaleeffekter til hover-effekter, menuer og brugerfladeovergange.
  • Bounce og Overshoot-animationerOpret legende fjeder-/hoppekotion ved at trække kontrolpunkter forbi kassen.
  • Easing til @keyframes-animationerVælg den rigtige animation-timing-function til CSS-keyframe-animationer.
  • Easing-værdier til JS-animationsbibliotekerFå cubic-bezier-værdier til GSAP, Framer Motion, anime.js og mere.
  • Forstå, hvordan easing fungererSe forholdet mellem en bezier-kurve og den bevægelse, den producerer.

Sådan fungerer det

Editoren er bygget helt i browseren med React-state og SVG — intet bibliotek håndterer kurvematematikken. To trækbare kontrolpunkter definerer en kubisk Bezier-sti i SVG, og browserens egen CSS-animationsmotor kører bevægelsesforhåndsvisningen ved at indsætte den resulterende cubic-bezier()-værdi direkte i en @keyframes-regel.

  1. 1
    Træk eller skriv kontrolpunkter
    To håndtag (P1 i blågrøn, P2 i rosa) sidder på et SVG-lærred. Trækning bruger Pointer Events API med setPointerCapture, så håndtaget følger din finger eller markør, selv uden for SVG-området. Du kan også flytte håndtagene med piletasterne eller skrive præcise værdier i talfelterne x1/y1/x2/y2.
  2. 2
    SVG tegner kurven i realtid
    Kurven er et enkelt SVG <path>-element, hvis C-kommando (kubisk Bezier) genberegnes ud fra de fire kontrolpunktkoordinater ved hver opdatering. Intet canvas, intet eksternt bibliotek — browserens SVG-motor tegner stien direkte.
  3. 3
    Browserens CSS-motor forhåndsviser easing
    Tre live-animationer (en glidende prik, en breddeovergang og en skalering) kører CSS @keyframes med cubic-bezier()-værdien indsat inline. Browserens egen animationsmotor fortolker kurven, så det, du ser, er præcis det, din produktions-CSS vil give.
  4. 4
    Kopiér kodestumpen i dit frameworks syntaks
    Faner formaterer de samme fire tal som en CSS transition-timing-function, en Tailwind-klasse med vilkårlig værdi, et Framer Motion ease-array eller en anime.js easing-streng. Kodestumpen skrives til udklipsholderen med navigator.clipboard. Kurven kodes også i URL-hashen (#b=x1,y1,x2,y2), så du kan dele eller bogmærke den.

Relaterede værktøjer

Ofte stillede spørgsmål