[ad_1]

Final product image
What You’ll Be Creating

Wenn wir über die Verwendung von Animationen sprechen, besprechen wir oft die praktischen Möglichkeiten, wie wir Übergänge, Animationen usw. erstellen können.  Animation ist eine leistungsstarke Möglichkeit, um unsere Designs hervorzuheben, aber anstatt sich darauf zu konzentrieren, wie individuelle Animationen funktionieren, kann die Art und Weise, wie mehrere Animationen kombinieren, etwas noch leistungsfähigeres erzeugen.

Appeal

Disneys 12 Grundprinzipien der Animation definieren “Appeal” als “Charisma in einem Schauspieler”.  Der Realismus, der Stil und die Substanz der Animation summieren sich zu einem Charakter, den die Zuschauer wirklich und interessant finden.

The Illusion of Life Disney Animation
Die Illusion des Lebens: Disney Animation, in der die 12 Grundprinzipien der Animation ausgelegt sind

Es ist eine Technik, die von Stripe genutzt wird.  Stripe ist ein Zahlungsprozessor und bietet Tools zum Einbetten von Zahlungsformularen in Websites.  Diese Formen sind berühmt für ihre schöne Gestaltung, insbesondere ihre Verwendung von Animationen.

In diesem Artikel werde ich diskutieren, wie mehrere Animationen verwendet werden können, um einen Effekt mehr als die Summe seiner Teile zu erstellen, und zeigen, wie Sie dieses Wissen in einer praktischen Weise verwenden können.

Social-Media-Karte

In diesem Beispiel verwenden wir eine Animation, um eine Karte mit Details und Links zu Web- und anderen sozialen Accounts zu präsentieren.

Klicken Sie auf den unteren Button, um den Inhalt von codepen.io zu laden.

Inhalt laden

Wenn eine Taste gedrückt wird, wird eine Karte mit einigen Folgeoptionen angezeigt.  Anstatt ein einfaches altes modales Fenster zu verwenden, verwenden wir Animation, um es interessanter zu machen.

Um es ansprechend zu gestalten, finden mehrere Animationen statt.  Die verschiedenen Teile animieren und führen jedes Element der Reihe nach ein.  Das hilft dem Betrachter, die Verbindung zwischen dem, was sie gedrückt haben, und dem Inhalt und der Reihenfolge der Animationen zu verstehen, um den Blick auf die folgenden Symbole zu lenken.

Einrichten des HTML

Um zu beginnen, brauchen wir eine Taste zum Drücken und eine Karte zum Anzeigen.  Die Karte wird ausgeblendet, wenn der Inhalt zum ersten Mal angezeigt wird.

Die Schaltfläche ist ein Bild und etwas Text.  Wenn es gedrückt wird, zeigt es die Karte an.  Die Karte besteht aus vier Abschnitten; eine Schaltfläche zum Schließen, eine Detailansicht, einen Kopfschuss und eine Symbolleiste mit sozialen Symbolen.  In diesem Beispiel verwenden wir Inline-SVG-Symbole aus der Entypo-Sammlung.

Styling

Bevor wir in Animationen gehen, fügen wir der Taste und der Karte etwas Stil hinzu.  Zuerst die Taste:

Hinweis: Wir haben outline: none; hinzugefügt zum .show-card Element, weil einige Browser den Fokuszuständen die Tasten einen besonderen Glanz verleihen (was wir nicht wollen):

button |

Dann werden wir die Karte und jeden der darin enthaltenen Abschnitte stylen.

Beachten Sie, dass wir diese Karte auf display: none zunächst festlegen.  Wir werden das dann mit JavaScript steuern.

Die Basic Show und Ausblenden

Anstatt in das CSS einzutauchen, richten wir zunächst die grundlegende Aktion zum Anzeigen und Verbergen der Kontaktinformationen ein.  Das verwendet ein wenig JavaScript (und in diesem Fall jQuery), um Klassen hinzuzufügen und zu entfernen, je nachdem, was angeklickt wurde:

Wir sollten nun die Karte mithilfe von jQuery und der CSS-Eigenschaft display anzeigen und ausblenden können.

Sehen Sie sich das grundlegende Beispiel zum Ein- und Ausblenden an:

Klicken Sie auf den unteren Button, um den Inhalt von codepen.io zu laden.

Inhalt laden

Vor dem Animieren

Mit dem Layout an der richtigen Stelle müssen wir einige zusätzliche Stile hinzufügen, um die verschiedenen Elemente zu verstecken, damit wir sie in Sicht animieren können.

Diese Elemente haben eine Verzögerung, bevor ihre Animation wirksam wird. Sie müssen daher zu Beginn nicht sichtbar sein.

Grundlegende Animationen

Mit dem Mechanismus zum Anzeigen und Verbergen der Karte können wir beginnen, Animationen anzuhängen.  Das obige JavaScript fügt der ausgestellten Karte einen show-Status hinzu und wir können Animationen an diese Klasse anhängen, die die einzelnen Teile der Karte vorstellen.

Dazu verwenden wir die CSS animation-Eigenschaft und stellen keyframes ein.

Es ist hilfreich, allgemeine Animationen in CSS zu erstellen und sie wiederzuverwenden.  Einfache Animationen wie Ein- und Ausblenden können einmal definiert und an mehreren Stellen verwendet werden.

Um zu zeigen, wie keyframes definiert sind, erstellen wir die Ein- und Ausblendungsanimationen.

Keyframes sind eine Reihe von Schritten, die als Prozentwerte definiert sind.  Sie können eine beliebige Anzahl von Schritten umfassen, aber in unserem Beispiel definieren wir nur die Start- (0%) und Ende- (100%) Keyframes.  Im fade-in beginnen wir mit keiner Opazität (0) und enden mit voller Opazität (1).  Die fade-out-Animation macht das Gegenteil.

Wir können die animation-Eigenschaft verwenden, um diese Fade-Animationen auf die Schaltfläche anzuwenden, wenn sie ein- und ausgeblendet wird.

Die Kurzschrift der Animation weist die Karte an, die fade-in-Animation zu verwenden, die 0,4 Sekunden mit einer Verzögerung von 1 Sekunde dauert.  Die Animation wird einmal abgespielt und stoppt am Ende (vorwärts) und verwendet die ease-out-Timing-Funktion.

Wenn die hide Klasse auf die Schaltfläche angewendet wird, wird die fade-out Animation wirksam.

Bouncy Effekt Timing Funktion

Der erste Teil, den wir vorstellen werden, ist die Symbolleiste.  Da das der Ort ist, an dem die Links stehen, wollen wir, dass es auffällt und das Erste ist, was die Leute bemerken.

Beim Animieren können wir mit der Eigenschaft der Timing-Funktion interessante Effekte erzeugen.  In diesem Fall verwenden wir eine cubic-bezier-Timing-Funktion, um etwas “bounce” hinzuzufügen, wenn die Symbolleiste erscheint.

Zunächst erstellen wir einige einfache Keyframes, damit die Leiste klein und in der Höhe anwächst.

Wir können diesen Keyframe-Satz jetzt auf die Symbolleiste anwenden, wenn die show-Klasse zur Karte hinzugefügt wird.

Der Bounce-Effekt wird durch die Verwendung der cubic-bezier-Timing-Funktion erzeugt.  Timing-Funktionen beschreiben die Geschwindigkeitsänderungen durch eine Animation und können so gestaltet werden, dass sie den Anfang oder das Ende einer Animation überzeichnen.  Diese Animation geht ein wenig über, korrigiert dann und erzeugt einen Bounce.

Animationsverzögerung

Mit der eingeblendeten Symbolleiste müssen wir den Abschnitt animieren, der die Details und den Headshot enthält.  Wir möchten, dass dieser Abschnitt nach der Einführung der Symbolleiste angezeigt wird.  Um das zu erreichen, verwenden wir die animation-delay-Eigenschaft.

Die auf den details-Bereich angewendete Animation hat eine Dauer von 0,7 Sekunden und eine Verzögerung von 0,5 Sekunden.  Das bedeutet, dass die Animation erst nach der Einführung der Symbolleiste gestartet wird.

Wir verwenden auch eine kubische Bezier-Timing-Funktion, um es etwas zu bouncen.

Als Nächstes definieren wir die Keyframes für die Animation dieses Containers.

Die Keyframes für die show-detail-container-Animation beginnen mit dem Container, der mit einer Höhe von Null unsichtbar ist, und werden auf die volle Höhe animiert.  Die kubische Bezier-Timing-Funktion lässt dann die Animation ein wenig überschwingen, um sie etwas zu bouncen.

Kombinieren mehrerer Animationen

Mehrere Animationen können in einer einzigen Eigenschaft angewendet werden.  Solange die Animationen nicht miteinander in Konflikt stehen (indem Sie versuchen, dieselbe Eigenschaft zu animieren), können sie verwendet werden, um einer Animation Nuancen hinzuzufügen.  Mehrere Animationen werden wie einzelne Animationen definiert, jedoch durch Kommas getrennt.

In diesem Fall werden Kopfbild, Name und Beschreibung eingeblendet, während gleichzeitig eine pop-in-Funktion verwendet wird, damit die Objekte aus einiger Entfernung zoomen.

Wenn wir eine einzige Animation mit einer kubischen Bézier-Timing-Funktion verwendet hätten, würde der Fade-Effekt abprallen und seltsam aussehen.  Stattdessen verwenden wir für die Überblendung eine lineare Timing-Funktion, und der Zoom hat den Bounce-Effekt.

Zuerst definieren wir die pop-in-Keyframes.

Das verwendet die scale-Umwandlung, damit jedes Element kleiner beginnt und auf seine normale Größe skaliert.

Lassen Sie uns den Inhalt einbringen.  Jedes Element hat zwei Animationen, und jedes der Elemente hat eine etwas längere Animationsverzögerung, um das Erscheinungsbild zu staffeln.

Schließen Sie das Symbol

Die Close-Icon-Animation nutzt die zuvor definierten fade-in-Keyframes.

Aufrufe zum Handeln

Wir müssen nur die Symbole jetzt zeigen.  Bei der Präsentation von Animationen ist das Letzte, was animiert wird, die Aufmerksamkeit des Betrachters.  Das bedeutet, dass das Auge des Betrachters der Animation folgt und die Symbole abschließt, die wir auswählen sollen.

Wir werden wieder die Animationsverzögerungseigenschaft für diese verwenden, um sicherzustellen, dass sie zuletzt eingeführt werden.  Zuerst definieren wir Keyframes einer Animation für die Icons:

Jedes Symbol dreht sich ein wenig, wenn es eingeblendet wird.  Wir können nun diese Animation an jedes der Symbole anhängen, wobei wir jeweils eine Verzögerung verwenden, um sie zu staffeln.

Setzen Sie diese alle zusammen und wir haben jetzt eine Karte, die schön erscheint, wenn der Knopf ausgewählt wird.

Noch eine Sache

Bevor wir fertig werden können, müssen wir eine hide-Aktion zum Schließen hinzufügen und die Karte animieren.  Zuerst werden wir das JavaScript aktualisieren.  Beim Drücken des close-Symbols wartet das JavaScript eine Sekunde lang, bevor die Karte mit display: none entfernt wird.

Das gibt uns eine Sekunde Zeit, um die Karte zu animieren – wir werden sie vom unteren Bildschirmrand fallen lassen.  Die Keyframes, die das erreichen, sind wie folgt:

Wir wenden das dann als Animation auf die Karte an.

Demo

Zusammenfassend können Sie das Ergebnis hier sehen.

Klicken Sie auf den unteren Button, um den Inhalt von codepen.io zu laden.

Inhalt laden

Hinweis zu Präfixen und Browserkompatibilität

Animationen werden in allen Browsern gut unterstützt.  Je nach Zielgruppe sollten sie in den meisten Situationen arbeiten.  Es ist wichtig sicherzustellen, dass die grundlegenden Funktionen zum Ein- und Ausblenden funktionieren und jede Animation als progressive Erweiterung hinzugefügt wird.

Zusammenfassung

Durch die Verwendung mehrerer Animationen und insbesondere der Eigenschaft animation-delay haben wir ein sehr einfaches Widget gefunden und es ansprechender gestaltet.  Die Animation führt den Betrachter durch jedes der Elemente und leitet sie zu den Handlungsaufforderungen.

Animation kann eine gute Möglichkeit sein, in Ihren Designs zu kommunizieren.  Diese Kommunikation hilft Besuchern, Ihre Absichten zu verstehen und die Glaubwürdigkeit und das Vertrauen in die Qualität Ihrer Arbeit zu verbessern.

[ad_2]

Source link