私がやろうとしている効果: - 数回振ってウィグルを止めてください。マウスが動かされるまでこの動作を定期的に行います。 - 揺らめくと、ウィグルの動きが完全に停止します。 - すべての遷移が滑らかです。 私は-webkit-animationキーフレームで試しましたが、マウスが動かなくなったときの遷移を簡単にするために-webkit-animation-timing-functionを使用しました。 また、私は、ウィグル、ストップ、およびウィグルの期間運動を達成する方法については迷っています。 正しい方向を指摘できれば幸いです。CSSのwiggle/shakeのエフェクト
答えて
次のいずれかを試してみてください。
.class:hover {
animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) both;
transform: translate3d(0, 0, 0);
backface-visibility: hidden;
perspective: 1000px;
}
@keyframes shake {
10%, 90% {
transform: translate3d(-1px, 0, 0);
}
20%, 80% {
transform: translate3d(2px, 0, 0);
}
30%, 50%, 70% {
transform: translate3d(-4px, 0, 0);
}
40%, 60% {
transform: translate3d(4px, 0, 0);
}
}
https://css-tricks.com/snippets/css/shake-css-keyframe-animation/
または スクリプトにこれを追加:<link type="text/css" href="https://rawgit.com/elrumordelaluz/csshake/master/dist/csshake.min.css"></link>
をそして、あなたは
を振るしたい要素にクラスを追加します。完全なドキュメンテーション:https://elrumordelaluz.github.io/csshake/
ここでは、簡単なウィグルアニメーションを上に移動すると停止します。
ウィグル間の遅延を実現するには、アニメーションの「空きチャンク」、つまり何も変化しない期間を含めることができます。私の例では、0%と80%の間では何も変わらず、最後の20%(「30秒」に終わる)でのみ「ウィグル」が発生します。
@keyframes wiggle {
0% { transform: rotate(0deg); }
80% { transform: rotate(0deg); }
85% { transform: rotate(5deg); }
95% { transform: rotate(-5deg); }
100% { transform: rotate(0deg); }
}
h1.wiggle {
display: inline-block;
animation: wiggle 2.5s infinite;
}
h1.wiggle:hover {
animation: none;
}
<h1 class="wiggle">
wiggle, wiggle
</h1>
あなたはそれ半ばアニメーションの上にマウスを置く場合は残念ながら、これはバック非ウィグル状態に「緩和」を考慮していません。そうするには少しのJavaScriptが必要かもしれません。
ありがとうございます!アニメーションの周期性をコントロールしていた私の問題の一部を解決しています。私はCSSがアニメーションを楽にするのに十分であると思った。あなたはどのようにjavascriptでやりますか? –
@SangamChouchan私はCSSも十分だろうと思った。私は 'transition:transform 0.5s'を' h1.wiggle'クラスに追加すると、アニメーションから外れやすくなりますが、動作していないようです。私は今、javascriptのソリューションを試しています。 –
- 1. メニューホバー「ロールダウン」エフェクトCSS
- 2. 子への親エフェクトのCSSトランジション
- 3. Bootstrap Navbar CSS不要なエフェクト
- 4. ホバー上のエフェクト画像(CSS付き)
- 5. FlexBox内のCSSテキスト操作(エフェクト)
- 6. jQueryのscrollTop/transform CSSエフェクトの適切な構文は?
- 7. IE8でウィンドウサイズ変更後にのみ表示されるCSSエフェクト
- 8. Z-indexと透明度を含むCSSスタイルのエフェクト
- 9. CSS Blurに奇妙な影のエフェクトが出る
- 10. AndEngine - ハイパースペースタイプのエフェクト
- 11. タッチスクリーンデバイスの「ドラッグ」エフェクト
- 12. JavaScriptのOnMouseOverエフェクト
- 13. フォトブーススタイルのエフェクトのライブラリ
- 14. kynetxのjQuery UIエフェクト
- 15. ngrx 4エフェクトのエラーインターセプタ
- 16. prettyphotoエフェクトのJqueryセレクター
- 17. 悪いハイライトのエフェクト
- 18. UXエフェクトの角2
- 19. NGRXエフェクト後のハンドルアクション
- 20. VB.netアプリケーションのGROWLエフェクト
- 21. Windows.UI.Compositionを使用して他のエフェクト内にあるエフェクトのアニメーション
- 22. css translateY on Hoverエフェクトを作成するには
- 23. CSS/Jqueryエフェクト - これはなんですか?
- 24. DIVのみのScrollSpyエフェクト
- 25. CSSのテキスト刻まれたまたは押し込まれたエフェクト
- 26. JS/CSSスライドのエフェクトは、htmlではなく、フィドルで動作します
- 27. AS3 Tweenクラスとパンのエフェクト
- 28. ActionScriptのエフェクトですか?
- 29. Kinect Fusion-Shadowエフェクトのマーチングキューブ
- 30. Android 3.0以降のImageButtonエフェクト
「Animate.css」をチェックしてください。Dan Edenが作成したアニメーションのCSSフレームワークです。 Craig Dennisは、jqueryプラグインを使ってそのフレームワークを拡張し、アニメーション間のスター/ストップフックと遅延を簡単に結びつけることができます。この2つを組み合わせて使用すると、あなたが望むいくつかのより多くの機能を実現することができます。 –
animate.cssは実際には非常に優れており、大きな柔軟性を提供します。私は基本的な原則を得るためにコードを研究するかもしれません。ありがとう! –