BrowserTools
Werbung
Startseite / Generatoren / Cubic-bezier-Easing-Generator

Cubic-bezier-Easing-Generator

Gestalte CSS-cubic-bezier-Easing-Kurven mit zwei ziehbaren Kontrollpunkten, Voreinstellungen, einer Live-Animationsvorschau und kopierfertigem Code, alles in deinem Browser.

Cubic-bezier-Easing-Generator wird geladen… Wenn nichts passiert, aktiviere JavaScript.

Easing ist das, was eine Animation, die lebendig wirkt, von einer trennt, die mechanisch wirkt. In der realen Welt bewegt sich nichts mit konstanter Geschwindigkeit: Objekte beschleunigen beim Start, bremsen beim Anhalten ab und schießen manchmal über ihr Ziel hinaus, bevor sie sich beruhigen. CSS erfasst das mit der Timing-Funktion, und die flexibelste Timing-Funktion ist cubic-bezier, mit der du eine ganze Beschleunigungskurve mit nur vier Zahlen beschreiben kannst. Diese Zahlen definieren die beiden Kontrollpunkte einer Bezier-Kurve, deren horizontale Achse die Zeit und deren vertikale Achse der Fortschritt ist, und die Form dieser Kurve bestimmt genau, wie ein Element im Verlauf eines Übergangs oder einer Animation beschleunigt und abbremst.

Häufig gestellte Fragen

Wird etwas hochgeladen, wenn ich eine Easing-Kurve erstelle?
Nein. Die Kurve und die Animationsvorschau werden vollständig in deinem Browser berechnet, und die einzige Ausgabe ist eine kurze CSS-Zeichenkette. Es gibt kein Backend, kein Konto und kein Tracking, und das Werkzeug funktioniert offline, sobald es geladen ist. Deine Kurve existiert nur im aktuellen Browser-Tab, bis du den Code kopierst.
Was bedeuten die vier Zahlen in cubic-bezier?
Es sind die Koordinaten zweier Kontrollpunkte: x1, y1, x2, y2. Die x-Werte sind Positionen in der Zeit und müssen zwischen 0 und 1 bleiben, während die y-Werte Positionen im Fortschritt sind und über diesen Bereich hinausgehen können. Zusammen biegen sie eine Bezier-Kurve, die die verstrichene Zeit darauf abbildet, wie weit die Animation fortgeschritten ist.
Warum kann ich die Griffe über den oberen oder unter den unteren Rand ziehen, aber nicht nach links oder rechts aus dem Kasten heraus?
Die CSS-Spezifikation verlangt, dass die x-Koordinate jedes Kontrollpunkts zwischen 0 und 1 liegt, daher begrenzt das Werkzeug das horizontale Ziehen auf diesen Bereich. Die y-Koordinate ist unbeschränkt, was beabsichtigt ist: y-Werte über 1 oder unter 0 erzeugen Überschwing- und Antizipationseffekte, bei denen das Element über sein Ziel hinausschnellt oder zurückzieht, bevor es sich bewegt.
Was ist der Unterschied zwischen ease-in, ease-out und ease-in-out?
Ease-in beginnt langsam und beschleunigt, was zu Elementen passt, die den Bildschirm verlassen. Ease-out beginnt schnell und bremst in seine Position ab, was sich für eintretende Elemente natürlich anfühlt und die häufigste Wahl für Oberflächen ist. Ease-in-out tut beides, langsam an jedem Ende und schnell in der Mitte, was gut für Elemente funktioniert, die von einer Ruheposition zu einer anderen wechseln.
Wie erzeuge ich einen federnden oder springenden Effekt?
Ziehe den y-Wert eines Kontrollpunkts über 1 oder unter 0, sodass die Kurve über ihre Endpunkte hinausschießt. Ein zweiter Kontrollpunkt, der über den oberen Rand gezogen wird, lässt das Element über sein Ziel hinausschnellen und sich zurück beruhigen, was ein Feder- oder Sprunggefühl ergibt. Die Live-Vorschau ist der beste Weg, dies abzustimmen, da kleine Griffänderungen einen großen Effekt auf die Bewegung haben.
Zeigt die Vorschau die echte Bewegung?
Ja. Der Vorschaumarker bewegt sich animiert mit dem exakten cubic-bezier-Wert, den du eingestellt hast, angewendet als echte CSS-Übergangs-Timing-Funktion. Das bedeutet, dass du dieselbe Kurve beurteilst, die der Browser in der Produktion verwenden wird, sodass das, was du in der Vorschau spürst, das ist, was deine Nutzer in der tatsächlichen Oberfläche sehen werden.
Wo verwende ich den erzeugten Wert in meinem CSS?
Verwende ihn als Timing-Funktion in einem Übergang oder einer Animation. Zum Beispiel wendet transition: transform 0.4s cubic-bezier(0.25, 0.1, 0.25, 1); deine Kurve auf einen transform an. Derselbe Wert funktioniert in der Eigenschaft animation-timing-function und innerhalb von Keyframe-Animationen, überall dort, wo CSS eine Timing-Funktion akzeptiert.
Funktionieren benutzerdefinierte cubic-bezier-Kurven in allen Browsern?
Ja. Die cubic-bezier-Timing-Funktion wird seit vielen Jahren in allen modernen Browsern ohne Herstellerpräfixe unterstützt, darunter Chrome, Firefox, Safari und Edge. Der erzeugte Wert ist Standard-CSS, du kannst ihn also direkt in deine Übergangs- oder Animationsdeklarationen einfügen.

Über Cubic-bezier-Easing-Generator

Das Problem mit cubic-bezier ist, dass die vier Zahlen im Kopf fast unmöglich vorstellbar sind. Ein Wert wie cubic-bezier(0.68, -0.55, 0.27, 1.55) bedeutet nichts, bis du die Kurve siehst, die er zeichnet, und die Bewegung, die er erzeugt. Dieser Generator macht das greifbar. Er zeigt die Kurve auf einem interaktiven Raster mit zwei ziehbaren Kontrollpunkten, die an Zeigerereignisse gekoppelt sind, sodass du die Griffe mit der Maus oder einem Finger ziehen und zusehen kannst, wie sich die Kurve in Echtzeit umformt. Die horizontale Position jedes Griffs ist auf den gültigen Bereich von null bis eins beschränkt, den die CSS-Spezifikation verlangt, während die vertikale Position frei ist, was die Antizipations- und Überschwingeffekte ermöglicht, bei denen der Fortschritt unter null fällt oder über eins steigt.

Eine Reihe von Voreinstellungen bietet dir die benannten CSS-Schlüsselwörter als Ausgangspunkte: linear für konstante Geschwindigkeit, ease für die sanfte Standardeinstellung sowie ease-in, ease-out und ease-in-out für die gängigen Beschleunigungsmuster. Von jeder Voreinstellung aus kannst du die Griffe ziehen, um das Gefühl zu verfeinern. Entscheidend ist, dass das Werkzeug eine Live-Vorschau enthält: Klicke auf die Spur oder die Wiedergabetaste, und ein Marker bewegt sich mit deiner exakten Kurve animiert darüber, sodass du die Bewegung danach beurteilst, wie sie sich tatsächlich bewegt, und nicht nach der Geometrie der Linie. Der erzeugte cubic-bezier-Wert und eine vollständige CSS-Deklaration werden laufend aktualisiert und mit einem Klick in die Zwischenablage kopiert.

Das gesamte Werkzeug läuft lokal in deinem Browser. Es gibt nichts hochzuladen, kein Konto und kein Tracking, und es funktioniert weiterhin offline, sobald die Seite geladen ist, denn die gesamte Aufgabe besteht darin, eine Kurve zu berechnen und eine kurze CSS-Zeichenkette zu erzeugen. Die Kombination aus einer sichtbaren Kurve, ziehbaren Punkten, benannten Voreinstellungen und einer echten Bewegungsvorschau verwandelt die abstrakte cubic-bezier-Syntax aus vier Zahlen in etwas, das du dich erfühlen kannst, was der schnellste Weg zu einem Easing ist, das in deiner Oberfläche richtig aussieht.

Von Autokarosserien zur Webanimation: das lange Leben der Bezier-Kurve

Die Mathematik hinter jeder CSS-Easing-Kurve wurde nicht für Bildschirme entwickelt, sondern für Blech. In den späten 1950er- und in den 1960er-Jahren brauchten die französischen Autohersteller Renault und Citroen eine präzise Möglichkeit, die glatten, fließenden Oberflächen von Karosserien zu beschreiben, damit sie genau gefertigt werden konnten. Pierre Bezier, ein Ingenieur bei Renault, machte die Kurven, die heute seinen Namen tragen, bekannt und veröffentlichte sie, während Paul de Casteljau, der im Geheimen bei Citroen arbeitete, unabhängig dieselben Ideen und den eleganten Algorithmus zu ihrer Auswertung entwickelte. Da de Casteljaus Arbeit vertraulich gehalten wurde, wurden die Kurven als Bezier-Kurven bekannt.

Die zentrale Erkenntnis ist, dass eine komplexe Kurve durch eine kleine Anzahl von Kontrollpunkten definiert werden kann, wobei die Kurve durch die Endpunkte verläuft und zu den dazwischenliegenden Punkten hingezogen wird, aber nicht durch sie hindurch. Das machte Bezier-Kurven perfekt für das aufkommende Gebiet der Computergrafik. Sie wurden zur Grundlage des Vektorzeichnens in PostScript und PDF, des Zeichenstift-Werkzeugs in jedem Illustrationsprogramm, der Umrisse der Schriftarten, die du gerade liest, und der Bewegungspfade in Animationssoftware. Eine Handvoll Kontrollpunkte kann fast jede glatte Form oder Bewegung beschreiben, was genau die Sparsamkeit ist, nach der die Ingenieure der 1960er-Jahre suchten.

CSS übernahm eine kubische Bezier-Kurve, eine mit zwei Kontrollpunkten zwischen festen Endpunkten, als seine Timing-Funktion, weil sie das gesamte Vokabular natürlicher Bewegung mit nur vier Zahlen erfasst. Die benannten Schlüsselwörter sind keine eigenständigen Mechanismen, sondern lediglich bequeme Bezeichnungen für bestimmte cubic-bezier-Werte: ease ist cubic-bezier(0.25, 0.1, 0.25, 1), und linear ist cubic-bezier(0, 0, 1, 1). Wenn du die Griffe in einem Werkzeug wie diesem ziehst, manipulierst du dieselben Kontrollpunkte, die ein Automobilingenieur einst zum Formen eines Kotflügels verwendete, und biegst nun Zeit und Fortschritt statt Metall, um eine Oberfläche reaktionsschnell und lebendig wirken zu lassen.

Werbung
Werbung
Werbung