ご存知のとおり、CSS3の「transition-timing-function」では時間毎のアニメーションの変化を指定することができます。
標準では次の値が用意されています。
- ease … 初期値
- linear … 一定
- ease-in … ゆっくり始まる
- ease-out … ゆっくり終わる
- ease-in-out …ゆっくり始まってゆっくり終わる
- cubic-bezier() … カスタムで指定可能
今日はこの中の「cubic-bezier()」に焦点を当てて、指定できる値をまとめてみました。
正弦曲線(Sine Curve)
- sineEaseIn(jQueryEasing : easeInSine)
$easeInSine: cubic-bezier(0.47, 0, 0.745, 0.715);
- sineEaseOut(jQueryEasing : easeOutSine)
$easeOutSine: cubic-bezier(0.39, 0.575, 0.565, 1)
- sineEaseInOut(jQueryEasing : easeInOutSine)
$easeInOutSine: cubic-bezier(0.445, 0.05, 0.55, 0.95)
二次曲線(Quadratic Curve)
- quadraticEaseIn(jQueryEasing : easeInQuad)
$easeInQuad: cubic-bezier(0.55, 0.085, 0.68, 0.53)
- quadraticEaseOut(jQueryEasing : easeOutQuad)
$easeOutQuad: cubic-bezier(0.25, 0.46, 0.45, 0.94)
- quadraticEaseInOut(jQueryEasing : easeInOutQuad)
$easeInOutQuad: cubic-bezier(0.455, 0.03, 0.515, 0.955)
三次曲線(Cubic Curve)
- cubicEaseIn(jQueryEasing : easeInCubic)
$easeInCubic: cubic-bezier(0.55, 0.055, 0.675, 0.19)
- cubicEaseOut(jQueryEasing : easeOutCubic)
$easeOutCubic: cubic-bezier(0.215, 0.61, 0.355, 1)
- cubicEaseInOut(jQueryEasing : easeInOutCubic)
$easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1)
四次曲線(Quartic Curve)
- quarticEaseIn(jQueryEasing : easeInQuart)
$easeInQuart: cubic-bezier(0.895, 0.03, 0.685, 0.22)
- quarticEaseOut(jQueryEasing : easeOutQuart)
$easeOutQuart: cubic-bezier(0.165, 0.84, 0.44, 1)
- quarticEaseInOut(jQueryEasing : easeInOutQuart)
$easeInOutQuart: cubic-bezier(0.77, 0, 0.175, 1)
五次曲線(Quintic Curve)
- quinticEaseIn(jQueryEasing : easeInQuint)
$easeInQuint: cubic-bezier(0.755, 0.05, 0.855, 0.06)
- quinticEaseOut(jQueryEasing : easeOutQuint)
$easeOutQuint: cubic-bezier(0.23, 1, 0.32, 1)
- quinticEaseInOut(jQueryEasing : easeInOutQuint)
$easeInOutQuint: cubic-bezier(0.86, 0, 0.07, 1)
指数曲線(Exponential Curve)
- exponentialEaseIn(jQueryEasing : easeInExpo)
$easeInExpo: cubic-bezier(0.95, 0.05, 0.795, 0.035)
- exponentialEaseOut(jQueryEasing : easeOutExpo)
$easeOutExpo: cubic-bezier(0.19, 1, 0.22, 1)
- exponentialEaseInOut(jQueryEasing : easeInOutExpo)
$easeInOutExpo: cubic-bezier(1, 0, 0, 1)
円曲線(Circular Curve)
- circularEaseIn(jQueryEasing : easeInCirc)
$easeInCirc: cubic-bezier(0.6, 0.04, 0.98, 0.335)
- circularEaseOut(jQueryEasing : easeOutCirc)
$easeOutCirc: cubic-bezier(0.075, 0.82, 0.165, 1)
- circularEaseInOut(jQueryEasing : easeInOutCirc)
$easeInOutCirc: cubic-bezier(0.785, 0.135, 0.15, 0.86)
あと戻りする曲線(Back)
- backEaseIn(jQueryEasing : easeInBack)
$easeInBack: cubic-bezier(0.6, -0.28, 0.735, 0.045)
- backEaseOut(jQueryEasing : easeOutBack)
$easeOutBack: cubic-bezier(0.175, 0.885, 0.32, 1.275)
- backEaseInOut(jQueryEasing : easeInOutBack)
$easeInOutBack: cubic-bezier(0.68, -0.55, 0.265, 1.55)
弾性曲線(Elastic Curve)
- ElasticEaseIn(jQueryEasing : easeInElastic)
- 再現不可能
- ElasticEaseOut(jQueryEasing : easeOutElastic)
- 再現不可能
- ElasticEaseInOut(jQueryEasing : easeInOutElastic)
- 再現不可能
跳ね返り(Bounce)
- ElasticEaseIn(jQueryEasing : easeInBounce)
- 再現不可能
- ElasticEaseOut(jQueryEasing : easeOutBounce)
- 再現不可能
- ElasticEaseInOut(jQueryEasing : easeInOutBounce)
- 再現不可能
jQueryEasingでの指定と共に、SASS仕様で変数化しているので使いやすいかと思います。
コピペして、ぜひご利用ください。