Webkrauts Logo

Webkrauts Webkrauts Schriftzug

- für mehr Qualität im Web

CSS 3 im Praxistest: Transition

CSS 3 im Praxistest: Transition

CSS 3 bietet verschiedene Optionen, die Darstellung im Browser lebendig zu machen, zu dynamisieren. Neben »Animations« und »Transforms« sind »Transitions« (Übergänge) die einfachste Möglichkeit, das Layout mit optischen Effekten zu versehen. Stephan Heller hat die CSS-Eigenschaften rund um »Transition« unter die Lupe genommen, getestet, was in der Praxis funktioniert und wo die Vor- und Nachteile liegen.

Im Adventskalender 2009 hat Eric Eggert über »Transitionen und Animationen« geschrieben und darüber, was in der Zukunft mit neuen CSS-3-Eigenschaften möglich sein wird. Vor zwei Jahren waren Webworker auf die Webkit-Browser Safari und Chrome beschränkt, wenn sie eine Transition umsetzen wollten. Opera und Firefox haben nachgezogen und unterstützen heute ebenfalls animierte Inhalte. Für den aktuellen Praxistest wurden die Versionen Opera 11, Internet Explorer 9, Firefox 8, Safari 5 und Google Chrome 14 berücksichtigt.

Das Transitions-Modul des CSS-3-Standards ist mit fünf Eigenschaften überschaubar. Im Gegensatz zu Animationen und Transformationen ist der Einsatz einfach, die einzelnen Eigenschaften intuitiv und sicher der leichteste Einstieg in den Bereich der animierten Inhalte.

Eine Transition *) ist als die fließende Veränderung einer CSS-Eigenschaft auf einer Zeitachse zu verstehen. Wo sich bislang bei einem Mouseover eine Farbe wie auf Knopfdruck änderte, kann sich diese über eine Transition langsam in die andere Farbe verwandeln.

Mindestangaben für eine Transition

Pflichtparameter sind transition-property und transition-duration. über transition-property geben Webworker die CSS-Eigenschaft an, die sie mit einer Transition versehen wollen. über transition-duration definiert er die Zeit, die eine fließende Veränderung dauern soll. Eine Minimalangabe sieht beispielsweise so aus (weiter unten findet ihr die Schreibweisen für die einzelnen Browser. Alle Eigenschaften sind erst mal in der Standardschreibweise des W3C gezeigt):

  1. div {
  2.     background-color: red;
  3.     transition-property: background-color;
  4.     transition-duration: 1.5s;
  5. }

oder auch als Kurzschreibweise (Shorthand):

  1. div {
  2.     background-color: red;
  3.     transition: background-color 1.5s;
  4. }

Für die Transition ist immer ein Anfangs- und Endzustand notwendig. In diesem Beispiel ist der Endzustand über das Pseudo-Attribut :hover definiert, kann aber auch über eine Klasse angegeben sein, die über JavaScript einem HTML-Element zugewiesen wird.

  1. div:hover {
  2.     background-color: blue;
  3. }
   transition: background-color

.beispiel-1: Die Hintergrundfarbe der Box wechselt beim überfahren mit der Maus in 1,5 Sekunden von rot auf blau (im Internet Explorer ohne übergang, da Transitions nicht unterstützt werden).

Parameter für eine Start-Verzögerung

Als weitere Eigenschaft steht transition-delay zur Verfügung, welche die Transition entsprechend verzögert.

Sowohl für transition-duration als auch für transition-delay werden Zeitwerte erwartet, entweder in Sekunden oder Millisekunden mit den Abkürzungen für die Einheiten s oder ms, z.B. 1.5s oder 1500ms (was hier dieselbe Zeit ist). Das W3C hat eine Liste mit Zeitangaben zusammengestellt: http://www.w3.org/TR/css3-values/#time.

Unterschiedliche Geschwindigkeiten auf der Zeitachse

Die wahrscheinlich umfangreichste Eigenschaft ist transition-timing-function. Darüber wird das Geschwindigkeitsverhalten bestimmt, mit der sich die Transition verhält. Für die »Zeitfunktion« stehen folgende Werte zur Verfügung:

  • Schlüsselworte (Keywords)
    • ease (Standard): Die Transition beginnt verlangsamt, nimmt schnell Geschwindigkeit auf und endet langsam. Zwei Drittel der Transition ist nach der halben Zeit dargestellt.
    • ease-in: Die Transition beginnt langsam, endet schnell.
    • ease-out: Die Transition startet schnell, endet langsam.
    • ease-in-out: Die Transition beginnt und endet langsam, in der Mitte ist die Geschwindigkeit am höchsten.
    • linear: Gleichbleibende Geschwindigkeit, keine Verlangsamung am Anfang oder Ende der Transition.
  • cubic-bezier()
    • cubic-bezier(x1, y1, x2, y2) steuert die Transition nach eigenen Angaben. Die ersten zwei Werte bestimmen die Startgeschwindigkeit, der dritte und vierte Wert die Endgeschwindigkeit. Der Geschwindigkeitsverlauf ergibt sich aus der Kurve, welche Start- und Endpunkt verbindet. Alle vier Parameter sind Pflichtparameter.
    • cubic-bezier() ist die Formel, auf deren Grundlage der Geschwindigkeitsverlauf berechnet wird. Hinter allen Schlüsselworten verbirgt sich eine cubic-bezier()-Definition mit konkreten Werten. Webdesigner, die sich für das mathematische Modell von cubic-bezier() interessieren, finden unter folgendem Link weiterführende Information: developer.mozilla.org/en/CSS/timing-function
  • steps()
    • bestimmt keinen fließenden, sondern einen übergang über Zwischenstadien, vergleichbar mit einer Uhr, die von Sekunde zu Sekunde springt, und dort jeweils eine Sekunde verharrt.
    • steps(nr, [start|end]) benötigt immer zwei Parameter:
      • Als erster wird die Anzahl der Schritte definiert, in denen die Transition angezeigt werden soll.
      • Der zweite Parameter hat die möglichen Werte start oder end. Damit wird bestimmt, ob ein Schritt vor oder nach einem Zeitintervall dargestellt werden soll. Was kompliziert klingt, ist anhand eines Beispiels leichter zu erklären: Ihr habt einen Lichtschalter, den ihr in fünf Sekunden anschalten sollt. Allerdings nur am Anfang oder Ende der fünf Sekunden. step (1, start) bedeutet, ihr schaltest den Schalter sofort an und es ist sofort hell. Oder ihr wartet fünf Sekunden und schaltest das Licht dann an, das wäre step(1,end). Beides Mal ist es nach fünf Sekunden hell, nur das »ab wann« wird durch den zweiten Parameter in steps() bestimmt.
      • step-start ist ein Schlüsselwort und entspricht steps (1,start)
      • step-end ist ebenfalls ein »Keyword« und entspricht steps (1,end). Beide Schlüsselworte sind also fest definiert auf einen Schritt in der Transition.
    • steps() ist W3C nur im Entwicklungsbereich des Standards zu finden, im »Working Draft« des W3C taucht dieser Parameter für die transition-timing-function noch nicht auf. Allerdings werden sie bereits von Firefox, Safari und Chrome unterstützt.
  • Eine sehr anschauliche Darstellung der transition-timing-function ist unter http://peter.sh/experiments/css3-transition-timing-functions/ zu finden.

Beispiel für steps()

An folgendem Beispiel wird das Verhalten von steps() deutlich (die Mehrfachangabe innerhalb einer Eigenschaft wird weiter unten beschrieben).

  1. .beispiel-2 {
  2.     background-color: #FFFF00;
  3.     width: 200px;
  4.     transition-property: width, background-color;
  5.     transition-duration: 5s, 5s;
  6.     transition-timing-function: steps(10,start), steps(5,end);
  7. }
  8. .beispiel-2:hover {
  9.     width: 600px;
  10.     background-color: #ff0000;
  11. }
steps(10,start)

.beispiel-2: Die gelbe Box wird in 10 Einzelschritten auf eine Breite von 600px gedehnt, die Farbe wechselt in 5 Steps. Internet Explorer unterstützt generell keine Transition, Opera kennt die steps() nicht und stellt den übergang mit der Zeitfunktion ease dar.

Kurzschreibweise transition

über die Kurzschreibweise transition werden die Werte für Eigenschaft, Dauer, Zeitfunktion und Verzögerung in einem Ausdruck geschrieben. Die einzelnen Parameter werden durch Leerzeichen voneinander getrennt. Dabei können die einzelnen Parameter fast in beliebiger Ordnung notiert werden. Lediglich die Reihenfolge der Zeitangaben ist nicht beliebig und für die Darstellung relevant: Der erste Zeitwert in der Kurzschreibweise wird als Dauer, der zweite wird als Verzögerung umgesetzt.

Gültige »shorthand«-Beispiele können so aussehen:

  1. transition: width 3s linear100ms;
  2.  
  3. /* oder */
  4. transition: 1s 1.5s padding-bottom ease-in;
  5.  
  6. /* oder auch nur */
  7. transition: color 2s;

Pflichtangabe ist die CSS-Eigenschaft, die mit einer Transition versehen werden soll, Sinn macht die Angabe erst mit der Zeitangabe. Ohne diese wird die Transition mit einer Zeit von 0 Sekunden (Standard für transition-duration) angezeigt, der Endzustand wäre also sofort erreicht.

Mehrere Transitions gleichzeitig definieren

Neben der Kurzschreibweise ist es möglich, mehrere Transitions in einem Ausdruck zu definieren.

Dabei werden die einzelnen Werte über ein Komma (,) getrennt geschrieben. Sind die Angaben über die einzelnen Eigenschaften definiert, werden die Werte entsprechen ihrer Position in der Definition zusammengeführt: Die erste CSS-Eigenschaft aus transition-property wird mit einer Dauer des ersten Eintrags aus transition-duration und jeweils den ersten Werten für Zeitfunktion und Verzögerung dargestellt. Gleiches gilt für die jeweils zweiten und dritten Angaben.

  1. div {
  2.     background-color: #caffee;
  3.     color: blue;
  4.     width: 200px;
  5.     transition-property: background-color, color, width;
  6.     transition-duration: 3s, 2s, 3000ms ;
  7.     transition-timing-function: linear, ease-in, ease;
  8.     transition-delay: 0s, 2500ms, 0s;
  9. }
  10.  
  11. div:hover {
  12.     background-color: blue;
  13.     color: yellow;
  14.     width: 100%;
  15. }

    transition-property: background-color, color, width;
    transition-duration: 3s, 2s, 3000ms ;
    transition-timing-function: linear, ease-in, ease;
    transition-delay: 0s, 2500ms, 0s;
    

.beispiel-3: Kombination mehrerer Transitions: Der Hintergrund verfärbt sich sofort von rot in blau, die Veränderung des Textes selber ist mit einer Verzögerung konfiguriert. Bei der Breite schafft es nur der Firefox, diese von einem Pixel-Wert zu einem Prozent-Wert umzuwandeln – Opera, Safari und Chrome ignorieren beim Wechsel der Einheiten die Transition für width.

Kurz und knapp: Mehrfachangaben in Kurzschreibweisen

In der Kurzschreibweise wird eine Transition über [Eigenschaft][Dauer][Timing-Funktion][Verzögerung] definiert, eine zweite Transition mit allen Angaben wird auch hier mit einem Komma (,) von der ersten Definition getrennt, so können (theoretisch) beliebig viele übergänge über nur ein transition definiert werden:

  1. div {
  2.     transition: background-color 3s linear ,  color 2s linear 2s ;
  3. }

Unterschiedliche Geschwindigkeit für »hin und zurück«

Die Darstellung der Transition läuft in beide Richtungen mit den gleichen Einstellungen. Allerdings können unterschiedliche Parameter die Darstellung zur Enddefiniton hin und für die rückläufige Transition definiert werden. Wie ihr im folgenden Beispiel sehen könnt, stehen im Endstatus div:hover andere Zeiten als im div, in dem die Ausgangssitution definiert ist.

  1. div {
  2.     padding: 10px;
  3.     background-color: white;
  4.     transition: padding 300ms ,background-color linear  300ms 0s;
  5. }
  6.  
  7. div:hover {
  8.     padding: 10px 200px;
  9.     background-color: #00f000;
  10.     transition: padding 3s ,background-color linear  1s 2s;
  11. }
Transition

.beispiel-4: Beim Mouseover werden die Zeitwerte aus der :hover-Angabe verwendet, die Box zieht sich langsam auf und ändert mit einer Verzögerung die Hintergrundfarbe. Bein Mouseout greifen die Werte aus der ersten Regel, Box und Farbe schnellen in 0.3 Sekunden auf die Ursprungsdarstellung zurück.

Browserunterstützung

Transition-Eigenschaften werden in der Standardschreibweise von noch keinem Browser unterstützt. Internet Explorer bis zur Version 9 unterstützt Transition gar nicht, die anderen benötigen das jeweilige Vendor-Präfix:

  • Firefox: -moz-
  • Opera: -o-
  • Safari und Google Chrome: -webkit-
  • Internet Explorer: -ms- (ab Version 10)

So kann eine komplette Regel, um alle potentiellen Browser zu »erwischen«, schon mal recht umfangreich sein:

  1. #beispiel {
  2.     margin-top: 100px;
  3.     opacity: 0;
  4.  
  5.     /* Firefox */
  6.     -moz-transition-property:    margin-top, opacity;
  7.     -moz-transition-duration:    1s,0.5s;
  8.     -moz-transition-delay:       1.0s,0s;
  9.  
  10.     /* Safari / Chrome */
  11.     -webkit-transition-property: margin-top, opacity;
  12.     -webkit-transition-duration: 1s,0.5s;
  13.     -webkit-transition-delay:    1.5s,0s;
  14.  
  15.     /* Opera */
  16.     -o-transition-property:      margin-top, opacity;
  17.     -o-transition-duration:      1s,0.5s;
  18.     -o-transition-delay:         1.5s,0s;
  19.  
  20.     /* Standard */
  21.     transition-property:         margin-top, opacity;
  22.     transition-duration:         1s,0.5s;
  23.     transition-delay:            1.5s,0s;
  24. }

Auch wenn die Standardschreibweise noch nicht unterstützt wird, sollte sie in der Regel nicht fehlen. Dieser Ausdruck sollte am Ende stehen, damit dieser greift, sobald ein Browser die Implementierung auf die Standardschreibweise umstellt.

Neben der Frage, welche Browser Transition unterstützen, steht aktuell aber auch wie Frage, welche CSS-Eigenschaften konkret unterstützt werden.

Was kann mit einem Übergang versehen werden?

Eine Liste der Eigenschaften, die mit einer Transition versehen werden können, ist beim W3C zu finden. Dabei werden die meisten Eigenschaften tatsächlich unterstützt. Ausnahmen sind beispielsweise vertical-algin oder border-spacing. Dort finden sich Eigenschaften wie visibility oder z-index, für die erst mal kein fließender übergang sinnvoll klingt. visibility zum Beispiel springt bei einer Transition von visible zu hidden am Ende der Zeit auf hidden um. Im Zusammenhang mit anderen Transitions ist aber das Umschalten nach einer bestimmten Zeit oder Verzögerung durchaus denkbar.

Auf der übersicht von transitionierbaren Eigenschaften ist jede Box mit einer anderen CSS-Eigenschaft zu sehen. Dort könnt ihr euch einen Eindruck verschaffen, wie sich die Transitions auswirken.

Was wie unterstützt wird, kann nur in einer Tendenz ausgedrückt werden: Alle Browser (außer dem Internet Explorer) unterstützen weitgehend alle definierten Eigenschaften. Safari, Chrome und Firefox sind dabei sicher am stärksten. Einschränkungen tauchen dann auf, wenn Regeln nicht sauber definiert sind. Opera, Safari und Chrome schaffen es beispielsweise nicht, eine Breite von 200px auf 100% umzuwandeln.

Kurzschreibweisen wie padding oder margin stellen für Opera Probleme dar. Obwohl Opera Eigenschaften wie margin-left oder padding-bottom in einer Transition darstellen kann, scheitert er bei der Angabe von margin bzw. padding in der Angabe von -o-transition-property. Die Webkitbrowser und Firefox haben mit Kurzschreibweisen keine Probleme.

Viele Transitions gleichzeitig zwingen den Browser gerne etwas in die Knie. Die komplexen Beispiele am Seitenende lassen Opera »stark arbeiten«, die Transition werden nicht in der Geschwindigkeit angezeigt, wie dort angegeben. Auch hier kommen Firefox und vor allem Safari und Chrome wesentlich besser hinterher.

Je nach Eigenschaft entsteht der Eindruck des Ruckelns. Dies hängt allerdings auch von der Eigenschaft ab. Ein font-weight kann zwar mit einer Transition versehen werden, allerdings sind die meisten Schriften auf den Rechnern in »normal« und »bold« hinterlegt. Eine Transition für font-weight von 100 zu 900 kann zwar definiert werden, wenn die Schrift jedoch nur in zwei Varianten vorliegt, kann eine Transition auch nur zwei Zustände darstellen. Ein fließender übergang wird hier nicht entstehen.

An den Ausführungen wird deutlich, dass ein Urteil über »richtig« oder »falsch« nicht eindeutig getroffen werden kann. Vieles ist möglich, im Einzelfall muss der Webworker browserübergreifend intensiv testen.

Vorteile von Transition

  • Es ist ein reines Layout-Modul und kann von daher als »hübsche« Ergänzung eingesetzt werden, ohne dass ein Browser, der keine Transition unterstützt (mit Ausnahmen des Surf-Erlebnisses) in der Funktionalität eingeschränkt ist.
  • Transition erfordert kein JavaScript und kein Flash-Plugin, und hat von daher das Potential, (auf einen Browser beschränkt) 100% der Darstellung anzubieten, ohne dass sich der Frontendler Gedanken über das (lästige) Fallback für die 3% oder 5% machen muss, die JavaScript eventuell deaktiviert haben.

Nachteile von Transition

  • Der Nachteil liegt in der heute noch mangelnden Browserunterstützung, vor allem durch den Internet-Explorer. Solange ein großer Teil aller Surfer (und das unabhängig davon, welcher Browser das ist) eine Eigenschaft nicht unterstützt.

Experiment – Navigation mit Transition

Das komplette CSS-File mit den vollständigen Angaben für die folgenden, aber auch die Transtions auf dieser Seite, sind im transition.css zu finden.

Über eine UL wird folgende Navigation aufgebaut:

.beispiel-5: Auf Mouseover wird der Linkstext über ein text-indent nach links raus gezogen. Im link ist ein span mit dem gleichen Text, dieses wird über die Kaskade .beispiel-5 ul li a:focus span, .beispiel-5 ul li a:hover span ausgelöst und nach oben gezogen. Der Effekt klappt auch mit der Tastatur. Das funktionert gut im Firefox, Safari und dem Chrome; Opera verliert schon mal die Höhen, wenn die Navigation schnell und häufig mit der Mouse überfahren wird.

Experiment – Bilderrätsel

Das folgende Foto ist mit 150 DIVs überlagert, die jeweils 30 Pixel hoch und breit sind.

American Football Spieler
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

.beispiel-6: Beim überfahren mit der Maus werden die DIVs durchsichtbar (opacity) und werden über 7.5 Sekunden wieder schwarz. Das CSS dafür besteht nur aus wenigen Zeilen. Auch hier kommt der Opera in der Darstellung der Transitions nicht hinterher. Das Beispiel funktioniert nicht über die Tastatur.

Weiterführende Links

*) Transition ist mit »übergang«, »überleitung« oder »Wechsel« zu übersetzen. Im Gegensatz zu den verwandten Modulen Animations und Transformations, die im Deutschen auch ohne übersetzung verständlich klingen – und vor allem auch als Verb ausgedrückt werden können (ein HTML-Element wird animiert oder transformiert), ist es schwierig, für Transition einen vergleichbaren Ausdruck in Deutsch zu finden, geschweige denn ein Verb, welches das Verhalten treffend beschreibt.
Gleichzeitig ist es wichtig, die drei Module klar voneinander zu trennen. Klar, eine Transition animiert ebenfalls ein HTML-Element, im Kontext von CSS ist es jedoch sinnvoll, auch sprachlich die klare Abgrenzung zu berücksichtigen. Von daher wird auf dieser Seite das Verb »animiert« gemieden und der Ausdrücke wie »mit einer Transition versehen« verwendet – auch wenn es etwas umständlich klingt.

Kommentare

Klaus
am 20.12.2011 - 10:56

Danke für den Artikel. Sehr ausführlich beschrieben. Bin nur leider zur Zeit mit dem IE im Netz und kann die einzelnen Effekte nicht durchspielen.
Muß ich dann von zu Hause machen.

Permanenter Link

Matthias Koch
am 20.12.2011 - 12:57

Opera kann die in diesem Artikel vorgestellten Beispiele ebenso gut verarbeiten wie Firefox. Insofern stimmt die Wertung

Auch hier kommt der Opera in der Darstellung der Transitions nicht hinterher.

nicht - aktuelle Browserversionen vorausgesetzt.

Permanenter Link

Daniel
am 20.12.2011 - 13:23

Hey,
wirklich sehr cool. Habe mir nicht gedacht, das das mit so ein paar zeilen Code möglich ist!

Permanenter Link

André Olejko
am 20.12.2011 - 20:00

Sehr gut! Dass unterschiedliche Transitionen für "hin und zurück" möglich sind, war mir neu. Und mit step() könnte man eine selbstlaufende Bilder-Slideshow bauen. Ha!

Permanenter Link

rene
am 20.12.2011 - 23:44

danke. :)

Permanenter Link
Stephan Heller

Stephan Heller (Autor)
am 21.12.2011 - 00:36

Hallo Zusammen,

vielen Dank für das Feedback - so macht das Schreiben Spaß!

Ein Frohes Fest! Stephan

Permanenter Link

Patrick H. Lauke
am 21.12.2011 - 01:42

Ganz kurz zu Beispiel 6 in Opera: es scheint mir, dass Opera, nachdem ein DIV transparent gemacht wurde, und es dann langsam wieder "opaque" wird, bei einem :hover zwar auch wieder nach transparent transitioniert, aber immer noch mit 7.5s anstatt gleich wieder auf transparent in 0s zu springen. Koennte ein Bug sein, oder etwas, das in der spec als Grenzfall nicht vollkommend spezifiziert wurde? Ich frag jedenfalls mal bei unseren Ingenieuren nach...

Permanenter Link

Finn
am 21.12.2011 - 11:34

Schöner Artikel der die Basics sehr gut abdeckt. Vielen Dank!
Eine weitere Ergänzung: Auf mobilen Devices lassen sich u.U. die Transitions flüssiger animieren wenn man die GPU aktiviert.

Permanenter Link

Markus
am 21.12.2011 - 13:16

Kann man mit Transitionen auch beim Anklicken eines Links ein Soft-Scrolling, zu einer bestimmten Stelle innerhalb der Seite, realisieren?

Permanenter Link

Patrick H. Lauke
am 21.12.2011 - 13:49

Markus, soweit ich weis leider nicht. Da muss man schon mittels JavaScript den normalen "Sprung" zum Link-Ziel abfangen, vielleicht dann Transitions einsetzen, und danach den focus() per JS wieder setzten...

Permanenter Link

Nikolaj
am 08.01.2013 - 18:29

Wow! Bin grade durch Zufall auf die Seite gestossen und sehr beeindruckt!
Hat mir viel bei meinem Problem weitergeholfen und ich schätze für die Zukunft werde ich einige andere interresante Artikel finden...
Tolle Arbeit!

Permanenter Link
Stephan Heller

Stephan Heller (Autor)
am 11.01.2013 - 13:05

Hallo Nikolaj, das höre ich doch gerne! Die einzelnen Eigenschaften sind im Detail auch unter www.css-wiki.com -> Transitions beschrieben - vielleicht noch mal eine nützliche Erweiterung. Viele Grüße, Stephan
Permanenter Link

Heinz
am 26.01.2013 - 15:09

Hallo Stephan
ich finde deinen Artikel sehr lehrreich. Ich habe eine Frage: Wie schaffe ich es, die verschiedenen Transitions gleich beim Laden der Seite zu starten, also ohne hover (Mouseover)?
Lieber Gruss
Heinz

Permanenter Link
Stephan Heller

Stephan Heller (Autor)
am 26.01.2013 - 18:31

Hallo Heinz,
vielen Dank fürs Feedback!
Die Beispiele arbeiten hier mit :hover - eine Transition reagiert aber auch immer dann, wenn sich am HTML was ändert. Das einfachste ist, Du fügst dem Element eine CSS-Klasse hinzu, was über JavaScript bzw. jQuery geht.
Siehe: http://api.jquery.com/addClass.
Also, am Ende der HTML-Seite das JavaScript einfügen und darüber eine Klasse hinzufügen. Dann die Transition über die CSS-Klasse definieren. Wenn die Seite dann lädt, beginnt auch die Transition!
Viel Erfolg, Stephan

Permanenter Link

Die Kommentare sind geschlossen.