animation.scss 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143
  1. // 水波纹效果
  2. .water_ripple{
  3. position: relative;
  4. overflow: hidden;
  5. }
  6. .water_ripple::after {
  7. content: '';
  8. position: absolute;
  9. top: 0;
  10. left: 0;
  11. right: 0;
  12. bottom: 0;
  13. background-image: radial-gradient(circle, rgba(255,255,255,.5) 10%, transparent 10.1%);
  14. opacity: 0;
  15. }
  16. .water_ripple:hover::after {
  17. animation: ripple .25s;
  18. }
  19. @keyframes ripple {
  20. 0%{
  21. transform: scale(0);
  22. opacity: 0;
  23. }
  24. 100% {
  25. transform: scale(10);
  26. opacity: 1;
  27. }
  28. }
  29. // 三个动画
  30. @keyframes tada {
  31. from {
  32. transform: scale3d(1, 1, 1)
  33. }
  34. 10%, 20% {
  35. transform: scale3d(.9, .9, .9) rotate3d(0, 0, 1, -3deg)
  36. }
  37. 30%, 50%, 70%, 90% {
  38. transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg)
  39. }
  40. 40%, 60%, 80% {
  41. transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg)
  42. }
  43. to {
  44. transform: scale3d(1, 1, 1)
  45. }
  46. }
  47. @keyframes rubberBand {
  48. 0% {
  49. -webkit-transform: scaleX(1);
  50. transform: scaleX(1)
  51. }
  52. 30% {
  53. -webkit-transform: scale3d(1.25,.75,1);
  54. transform: scale3d(1.25,.75,1)
  55. }
  56. 40% {
  57. -webkit-transform: scale3d(.75,1.25,1);
  58. transform: scale3d(.75,1.25,1)
  59. }
  60. 50% {
  61. -webkit-transform: scale3d(1.15,.85,1);
  62. transform: scale3d(1.15,.85,1)
  63. }
  64. 65% {
  65. -webkit-transform: scale3d(.95,1.05,1);
  66. transform: scale3d(.95,1.05,1)
  67. }
  68. 75% {
  69. -webkit-transform: scale3d(1.05,.95,1);
  70. transform: scale3d(1.05,.95,1)
  71. }
  72. to {
  73. -webkit-transform: scaleX(1);
  74. transform: scaleX(1)
  75. }
  76. }
  77. @keyframes jello {
  78. 0%,11.1%,to {
  79. -webkit-transform: translateZ(0);
  80. transform: translateZ(0)
  81. }
  82. 22.2% {
  83. -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
  84. transform: skewX(-12.5deg) skewY(-12.5deg)
  85. }
  86. 33.3% {
  87. -webkit-transform: skewX(6.25deg) skewY(6.25deg);
  88. transform: skewX(6.25deg) skewY(6.25deg)
  89. }
  90. 44.4% {
  91. -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
  92. transform: skewX(-3.125deg) skewY(-3.125deg)
  93. }
  94. 55.5% {
  95. -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
  96. transform: skewX(1.5625deg) skewY(1.5625deg)
  97. }
  98. 66.6% {
  99. -webkit-transform: skewX(-.78125deg) skewY(-.78125deg);
  100. transform: skewX(-.78125deg) skewY(-.78125deg)
  101. }
  102. 77.7% {
  103. -webkit-transform: skewX(.390625deg) skewY(.390625deg);
  104. transform: skewX(.390625deg) skewY(.390625deg)
  105. }
  106. 88.8% {
  107. -webkit-transform: skewX(-.1953125deg) skewY(-.1953125deg);
  108. transform: skewX(-.1953125deg) skewY(-.1953125deg)
  109. }
  110. }
  111. @keyframes zoom{
  112. 0%{
  113. transform: scale(0);
  114. opacity: 0;
  115. }
  116. 100% {
  117. transform: scale(1);
  118. opacity: 1;
  119. }
  120. }