button-animations.css 1.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. /* Animation System */
  2. /* ! bug w/ grid or flex buttons */
  3. /* .button:where(.primary):hover:not(:active) {
  4. animation: rubberband 4s ease-in-out 1;
  5. } */
  6. /* .button:where(.warning,.danger):hover:not(:active) {
  7. animation: headshake 2.5s cubic-bezier(.445,.05,.55,.95) 50;
  8. } */
  9. @keyframes rubberband {
  10. 0% {
  11. transform: scaleX(1)
  12. }
  13. 9.9% {
  14. transform: scale3d(1.125,.875,1)
  15. }
  16. 13.2% {
  17. transform: scale3d(.875,1.125,1)
  18. }
  19. 16.5% {
  20. transform: scale3d(1.075,.925,1)
  21. }
  22. 21.45% {
  23. transform: scale3d(.975,1.025,1)
  24. }
  25. 24.75% {
  26. transform: scale3d(1.025,.975,1)
  27. }
  28. 33% {
  29. transform: scaleX(1)
  30. }
  31. }
  32. @keyframes headshake {
  33. 0% {
  34. transform: translateX(0)
  35. }
  36. 3.25% {
  37. transform: translateX(-6px) rotateY(-9deg)
  38. }
  39. 9.25% {
  40. transform: translateX(5px) rotateY(7deg)
  41. }
  42. 15.75% {
  43. transform: translateX(-3px) rotateY(-5deg)
  44. }
  45. 21.75% {
  46. transform: translateX(2px) rotateY(3deg)
  47. }
  48. 25% {
  49. transform: translateX(0)
  50. }
  51. }