2016-04-16 13 views
2

Ich habe mit Übergängen und Animationen herumgespielt, und ich wollte das Beste aus der Verwendung von Hover mit ihnen machen.CSS3 Übergänge, Keyframes, Animationen

Ich habe mich gefragt, ob es möglich ist, Animation zu machen, nachdem man über sie hinweg gefahren ist, nicht unbedingt, während man darüber schwebt. Zum Beispiel, wenn ich möchte, dass ein Bild hineingleitet und die Deckkraft ändert, nachdem der zugehörige Absatz verschoben wurde, wie würde ich es erhalten, ohne die Maus des Abschnitts zu behalten?

Meine letzte Frage ist, ob etwas ähnlich wie Keyframes mit Übergängen verwendet werden kann. Ich bevorzuge Übergänge, weil sie zurück in den ursprünglichen Zustand übergehen, anstatt zurückzuschnappen.

Ich habe ein paar grundlegende Codebeispiele gemacht, und ich frage mich, wie ich sie erweitern kann. Hoffentlich helfen die Beispiele zu erklären, was ich zu erklären versuche.

jsfiddle

Says I need code to link jsfiddle 

Sie sind sehr einfach, die erste ist nur eine Animation (von links nach rechts), die ich einmal nach schwebend bleiben wollen.

Die zweite Übergang (von links nach rechts) ist, und ich frage mich, ob ich eine Animation ähnlich wie die Animation machen, dass es (von links nach rechts nach links)

+1

* sagt, dass ich Code benötigen * verbinden jsfiddle - Das heißt, Sie Code schreiben müssen und nicht Text als Code formatieren :) auf die Frage kommen, eine Kombination von Animation und Übergang funktioniert nicht in WebKit-Browsern (und sogar in FF hat es ein paar Probleme). Sie können einige Informationen über den Grund in dieser Antwort finden - http://stackoverflow.com/questions/32142484/combination-of-animation-and-transition-not-working-properly/32142949#32142949. – Harry

+0

Wenn ich die beiden nicht kombinieren kann, gibt es eine Möglichkeit, Animationen in den ursprünglichen Zustand zurückkehren zu lassen, ohne einfach "zurück zu springen"? Ich habe überflogen, was du verlinkt hast, aber ich möchte weder jquery noch javascript verwenden. – Sakvad

Antwort

0

ich die Geige here

aktualisieren folgt

"Von links nach rechts nach links" kann jedoch nicht durch Übergang erreichen. Da der Übergang nur den Startstatus und den Endstatus hat, kann er den mittleren Status nicht verarbeiten. Schau hier. https://developer.mozilla.org/en-US/docs/Web/CSS/transition

Sie können "von links nach rechts nach links" über Keyframes erreichen. Beispielsweise.

@keyframes slideRight { 
    0% { 
     margin-left: 0em; 
     } 
     50% { 
     margin-left: 2em; 
     } 
     100% { 
     margin-left: 0em 
     } 
    } 
+0

Danke für den SlideRight-Code. Ich schien meine Geige nicht korrekt zu aktualisieren, da ich dachte, ich hätte etwas Ähnliches gepostet. Weißt du, ob es möglich ist, den Hover-Status beizubehalten? – Sakvad

+0

Schreiben Sie nicht einfach den Animationsstil in: Hover-Status, sondern einen anderen Klassennamen, wie zB Animation-Hover. Wenn Sie das div maus eingeben, fügen Sie den Klassennamen 'animation-hover' hinzu. Das ist es. – youngwind

+0

Bedeutet dies, dass es unmöglich ist, den Effekt nach dem Überfahren ohne JavaScript zu erhalten? – Sakvad

Verwandte Themen