zoukankan      html  css  js  c++  java
  • animate.css源码

       1 /*!
       2  动画属性:
       3  animation-name:动画名称
       4  animation-duration:动画时间
       5  animation-timing-function:动画的速度曲线
       6  animation-delay:动画延迟
       7  animation-iteration-count:动画播放次数
       8  animation-direction:是否轮流反响播放动画
       9  animation: name duration timing-function delay iteration-count direction;
      10  其中:名称和时长是必须的;
      11  */
      12 
      13 @keyframes bounce {
      14     from,
      15     20%,
      16     53%,
      17     80%,
      18     to {
      19         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      20         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
      21         -webkit-transform: translate3d(0, 0, 0);/* 跳回到原点*/
      22         transform: translate3d(0, 0, 0);
      23     }
      24 
      25     40%,
      26     43% {
      27         -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      28         animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      29 
      30         -webkit-transform: translate3d(0, -30px, 0);/* 向上跳30*/
      31         transform: translate3d(0, -30px, 0);
      32     }
      33 
      34     70% {
      35         -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      36         animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
      37 
      38         -webkit-transform: translate3d(0, -15px, 0);/* 向上跳15*/
      39         transform: translate3d(0, -15px, 0);
      40     }
      41 
      42     90% {
      43         -webkit-transform: translate3d(0, -4px, 0);/* 向上跳4*/
      44         transform: translate3d(0, -4px, 0);
      45     }
      46 }
      47 
      48 .bounce {
      49     -webkit-animation-name: bounce;
      50     animation-name: bounce;
      51     -webkit-transform-origin: center bottom;
      52     transform-origin: center bottom;
      53     /*animation:bounce 2s ;*/
      54 }
      55 
      56 
      57 
      58 @keyframes flash {
      59     0%,
      60     50%,
      61     100% {
      62         opacity: 1;
      63     }
      64     25%,
      65     75% {
      66         opacity: 0;
      67     }
      68 }
      69 
      70 .flash {
      71     -webkit-animation-name: flash;
      72     animation-name: flash;
      73 }
      74 
      75 @keyframes pulse { /*变大变小*/
      76     from {
      77         transform: scale3d(1, 1, 1);
      78     }
      79 
      80     50% {
      81         transform: scale3d(1.05, 1.05, 1.05);
      82     }
      83     to {
      84         transform: scale3d(1, 1, 1);
      85     }
      86 }
      87 .pulse {
      88     -webkit-animation-name: pulse;
      89     animation-name: pulse;
      90 }
      91 
      92 
      93 @keyframes rubberBand {/*橡皮经:y变窄,x变窄循环,然后恢复正常*/
      94     from {
      95         transform: scale3d(1, 1, 1);
      96     }
      97 
      98     30% {
      99         transform: scale3d(1.25, 0.75, 1);
     100     }
     101 
     102     40% {
     103         transform: scale3d(0.75, 1.25, 1);
     104     }
     105 
     106     50% {
     107         transform: scale3d(1.15, 0.85, 1);
     108     }
     109 
     110     65% {
     111         transform: scale3d(0.95, 1.05, 1);
     112     }
     113 
     114     75% {
     115         transform: scale3d(1.05, 0.95, 1);
     116     }
     117 
     118     to {
     119         transform: scale3d(1, 1, 1);
     120     }
     121 }
     122 .rubberBand {
     123     animation-name: rubberBand;
     124 }
     125 
     126 @keyframes shake {
     127     from,
     128     to {
     129         transform: translate3d(0, 0, 0);
     130     }
     131     10%,
     132     30%,
     133     50%,
     134     70%,
     135     90% {
     136         transform: translate3d(-10px, 0, 0);
     137     }
     138 
     139     20%,
     140     40%,
     141     60%,
     142     80% {
     143         -webkit-transform: translate3d(10px, 0, 0);
     144         transform: translate3d(10px, 0, 0);
     145     }
     146 }
     147 
     148 .shake {
     149     -webkit-animation-name: shake;
     150     animation-name: shake;
     151 }
     152 
     153 
     154 @keyframes headShake {
     155     0% {
     156         transform: translateX(0);
     157     }
     158     6.5% {
     159         transform: translateX(-6px) rotateY(-9deg);
     160     }
     161 
     162     18.5% {
     163         -webkit-transform: translateX(5px) rotateY(7deg);
     164         transform: translateX(5px) rotateY(7deg);
     165     }
     166 
     167     31.5% {
     168         -webkit-transform: translateX(-3px) rotateY(-5deg);
     169         transform: translateX(-3px) rotateY(-5deg);
     170     }
     171 
     172     43.5% {
     173         -webkit-transform: translateX(2px) rotateY(3deg);
     174         transform: translateX(2px) rotateY(3deg);
     175     }
     176 
     177     50% {
     178         -webkit-transform: translateX(0);
     179         transform: translateX(0);
     180     }
     181 }
     182 
     183 .headShake {
     184     -webkit-animation-timing-function: ease-in-out;
     185     animation-timing-function: ease-in-out;
     186     -webkit-animation-name: headShake;
     187     animation-name: headShake;
     188 }
     189 
     190 
     191 @keyframes swing {/*围绕一个点左右荡秋千摆动:rotate3d(x,y,z,angle)围绕z轴进行旋转*/
     192     20% {
     193         transform: rotate3d(0, 0, 1, 15deg);
     194     }
     195 
     196     40% {
     197         transform: rotate3d(0, 0, 1, -10deg);
     198     }
     199 
     200     60% {
     201         transform: rotate3d(0, 0, 1, 5deg);
     202     }
     203 
     204     80% {
     205         transform: rotate3d(0, 0, 1, -5deg);
     206     }
     207 
     208     to {
     209         transform: rotate3d(0, 0, 1, 0deg);
     210     }
     211 }
     212 
     213 .swing {
     214     -webkit-transform-origin: top center;
     215     transform-origin: top center;
     216     -webkit-animation-name: swing;
     217     animation-name: swing;
     218 }
     219 
     220 
     221 @keyframes tada {/*缩小,左旋转---放大,右旋转--恢复正常*/
     222     from {
     223         transform: scale3d(1, 1, 1);
     224     }
     225     10%,
     226     20% {
     227         transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
     228     }
     229     30%,
     230     50%,
     231     70%,
     232     90% {
     233         transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
     234     }
     235     40%,
     236     60%,
     237     80% {
     238         transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
     239     }
     240     to {
     241         transform: scale3d(1, 1, 1);
     242     }
     243 }
     244 .tada {
     245     animation-name: tada;
     246 }
     247 
     248 
     249 
     250 @keyframes wobble {/*晃动:向左移动,绕z轴向左旋转 ----向右移动,绕z轴向右旋转*/
     251     from {
     252         transform: translate3d(0, 0, 0);
     253     }
     254 
     255     15% {
     256         transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg);
     257     }
     258 
     259     30% {
     260         transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg);
     261     }
     262 
     263     45% {
     264         transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg);
     265     }
     266 
     267     60% {
     268         transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg);
     269     }
     270 
     271     75% {
     272         transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg);
     273     }
     274 
     275     to {
     276         transform: translate3d(0, 0, 0);
     277     }
     278 }
     279 
     280 .wobble {
     281     -webkit-animation-name: wobble;
     282     animation-name: wobble;
     283 }
     284 
     285 
     286 @keyframes jello {/*凝胶物:倾斜,左右交替*/
     287     from,
     288     11.1%,
     289     to {
     290         -webkit-transform: translate3d(0, 0, 0);
     291         transform: translate3d(0, 0, 0);
     292     }
     293 
     294     22.2% {
     295         -webkit-transform: skewX(-12.5deg) skewY(-12.5deg);
     296         transform: skewX(-12.5deg) skewY(-12.5deg);
     297     }
     298 
     299     33.3% {
     300         -webkit-transform: skewX(6.25deg) skewY(6.25deg);
     301         transform: skewX(6.25deg) skewY(6.25deg);
     302     }
     303 
     304     44.4% {
     305         -webkit-transform: skewX(-3.125deg) skewY(-3.125deg);
     306         transform: skewX(-3.125deg) skewY(-3.125deg);
     307     }
     308 
     309     55.5% {
     310         -webkit-transform: skewX(1.5625deg) skewY(1.5625deg);
     311         transform: skewX(1.5625deg) skewY(1.5625deg);
     312     }
     313 
     314     66.6% {
     315         -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg);
     316         transform: skewX(-0.78125deg) skewY(-0.78125deg);
     317     }
     318 
     319     77.7% {
     320         -webkit-transform: skewX(0.390625deg) skewY(0.390625deg);
     321         transform: skewX(0.390625deg) skewY(0.390625deg);
     322     }
     323 
     324     88.8% {
     325         -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
     326         transform: skewX(-0.1953125deg) skewY(-0.1953125deg);
     327     }
     328 }
     329 
     330 .jello {
     331     -webkit-animation-name: jello;
     332     animation-name: jello;
     333     -webkit-transform-origin: center;
     334     transform-origin: center;
     335 }
     336 
     337 
     338 @keyframes heartBeat {/*心跳:变大-变小交替*/
     339     0% {
     340         -webkit-transform: scale(1);
     341         transform: scale(1);
     342     }
     343 
     344     14% {
     345         -webkit-transform: scale(1.3);
     346         transform: scale(1.3);
     347     }
     348 
     349     28% {
     350         -webkit-transform: scale(1);
     351         transform: scale(1);
     352     }
     353 
     354     42% {
     355         -webkit-transform: scale(1.3);
     356         transform: scale(1.3);
     357     }
     358 
     359     70% {
     360         -webkit-transform: scale(1);
     361         transform: scale(1);
     362     }
     363 }
     364 
     365 .heartBeat {
     366     -webkit-animation-name: heartBeat;
     367     animation-name: heartBeat;
     368     -webkit-animation-duration: 1.3s;
     369     animation-duration: 1.3s;
     370     -webkit-animation-timing-function: ease-in-out;
     371     animation-timing-function: ease-in-out;
     372 }
     373 
     374 
     375 @keyframes bounceIn {
     376     from,
     377     20%,
     378     40%,
     379     60%,
     380     80%,
     381     to {
     382         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     383         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     384     }
     385 
     386     0% {
     387         opacity: 0;
     388         -webkit-transform: scale3d(0.3, 0.3, 0.3);
     389         transform: scale3d(0.3, 0.3, 0.3);
     390     }
     391 
     392     20% {
     393         -webkit-transform: scale3d(1.1, 1.1, 1.1);
     394         transform: scale3d(1.1, 1.1, 1.1);
     395     }
     396 
     397     40% {
     398         -webkit-transform: scale3d(0.9, 0.9, 0.9);
     399         transform: scale3d(0.9, 0.9, 0.9);
     400     }
     401 
     402     60% {
     403         opacity: 1;
     404         -webkit-transform: scale3d(1.03, 1.03, 1.03);
     405         transform: scale3d(1.03, 1.03, 1.03);
     406     }
     407 
     408     80% {
     409         -webkit-transform: scale3d(0.97, 0.97, 0.97);
     410         transform: scale3d(0.97, 0.97, 0.97);
     411     }
     412 
     413     to {
     414         opacity: 1;
     415         -webkit-transform: scale3d(1, 1, 1);
     416         transform: scale3d(1, 1, 1);
     417     }
     418 }
     419 
     420 .bounceIn {
     421     -webkit-animation-duration: 0.75s;
     422     animation-duration: 0.75s;
     423     -webkit-animation-name: bounceIn;
     424     animation-name: bounceIn;
     425 }
     426 
     427 
     428 @keyframes bounceInDown {/*向下,向上循环*/
     429     from,
     430     60%,
     431     75%,
     432     90%,
     433     to {
     434         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     435         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     436     }
     437 
     438     0% {
     439         opacity: 0;
     440         -webkit-transform: translate3d(0, -3000px, 0);
     441         transform: translate3d(0, -3000px, 0);
     442     }
     443 
     444     60% {
     445         opacity: 1;
     446         -webkit-transform: translate3d(0, 25px, 0);
     447         transform: translate3d(0, 25px, 0);
     448     }
     449 
     450     75% {
     451         -webkit-transform: translate3d(0, -10px, 0);
     452         transform: translate3d(0, -10px, 0);
     453     }
     454 
     455     90% {
     456         -webkit-transform: translate3d(0, 5px, 0);
     457         transform: translate3d(0, 5px, 0);
     458     }
     459 
     460     to {
     461         -webkit-transform: translate3d(0, 0, 0);
     462         transform: translate3d(0, 0, 0);
     463     }
     464 }
     465 
     466 .bounceInDown {
     467     -webkit-animation-name: bounceInDown;
     468     animation-name: bounceInDown;
     469 }
     470 
     471 
     472 @keyframes bounceInLeft {
     473     from,
     474     60%,
     475     75%,
     476     90%,
     477     to {
     478         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     479         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     480     }
     481 
     482     0% {
     483         opacity: 0;
     484         -webkit-transform: translate3d(-3000px, 0, 0);
     485         transform: translate3d(-3000px, 0, 0);
     486     }
     487 
     488     60% {
     489         opacity: 1;
     490         -webkit-transform: translate3d(25px, 0, 0);
     491         transform: translate3d(25px, 0, 0);
     492     }
     493 
     494     75% {
     495         -webkit-transform: translate3d(-10px, 0, 0);
     496         transform: translate3d(-10px, 0, 0);
     497     }
     498 
     499     90% {
     500         -webkit-transform: translate3d(5px, 0, 0);
     501         transform: translate3d(5px, 0, 0);
     502     }
     503 
     504     to {
     505         -webkit-transform: translate3d(0, 0, 0);
     506         transform: translate3d(0, 0, 0);
     507     }
     508 }
     509 
     510 .bounceInLeft {
     511     -webkit-animation-name: bounceInLeft;
     512     animation-name: bounceInLeft;
     513 }
     514 
     515 
     516 @keyframes bounceInRight {
     517     from,
     518     60%,
     519     75%,
     520     90%,
     521     to {
     522         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     523         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     524     }
     525 
     526     from {
     527         opacity: 0;
     528         -webkit-transform: translate3d(3000px, 0, 0);
     529         transform: translate3d(3000px, 0, 0);
     530     }
     531 
     532     60% {
     533         opacity: 1;
     534         -webkit-transform: translate3d(-25px, 0, 0);
     535         transform: translate3d(-25px, 0, 0);
     536     }
     537 
     538     75% {
     539         -webkit-transform: translate3d(10px, 0, 0);
     540         transform: translate3d(10px, 0, 0);
     541     }
     542 
     543     90% {
     544         -webkit-transform: translate3d(-5px, 0, 0);
     545         transform: translate3d(-5px, 0, 0);
     546     }
     547 
     548     to {
     549         -webkit-transform: translate3d(0, 0, 0);
     550         transform: translate3d(0, 0, 0);
     551     }
     552 }
     553 
     554 .bounceInRight {
     555     -webkit-animation-name: bounceInRight;
     556     animation-name: bounceInRight;
     557 }
     558 
     559 
     560 @keyframes bounceInUp {
     561     from,
     562     60%,
     563     75%,
     564     90%,
     565     to {
     566         -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     567         animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
     568     }
     569 
     570     from {
     571         opacity: 0;
     572         -webkit-transform: translate3d(0, 3000px, 0);
     573         transform: translate3d(0, 3000px, 0);
     574     }
     575 
     576     60% {
     577         opacity: 1;
     578         -webkit-transform: translate3d(0, -20px, 0);
     579         transform: translate3d(0, -20px, 0);
     580     }
     581 
     582     75% {
     583         -webkit-transform: translate3d(0, 10px, 0);
     584         transform: translate3d(0, 10px, 0);
     585     }
     586 
     587     90% {
     588         -webkit-transform: translate3d(0, -5px, 0);
     589         transform: translate3d(0, -5px, 0);
     590     }
     591 
     592     to {
     593         -webkit-transform: translate3d(0, 0, 0);
     594         transform: translate3d(0, 0, 0);
     595     }
     596 }
     597 
     598 .bounceInUp {
     599     -webkit-animation-name: bounceInUp;
     600     animation-name: bounceInUp;
     601 }
     602 
     603 
     604 @keyframes bounceOut {/*小--大--小:最后透明度为0*/
     605     20% {
     606         -webkit-transform: scale3d(0.9, 0.9, 0.9);
     607         transform: scale3d(0.9, 0.9, 0.9);
     608     }
     609 
     610     50%,
     611     55% {
     612         opacity: 1;
     613         -webkit-transform: scale3d(1.1, 1.1, 1.1);
     614         transform: scale3d(1.1, 1.1, 1.1);
     615     }
     616 
     617     to {
     618         opacity: 0;
     619         -webkit-transform: scale3d(0.3, 0.3, 0.3);
     620         transform: scale3d(0.3, 0.3, 0.3);
     621     }
     622 }
     623 
     624 .bounceOut {
     625     -webkit-animation-duration: 0.75s;
     626     animation-duration: 0.75s;
     627     -webkit-animation-name: bounceOut;
     628     animation-name: bounceOut;
     629 }
     630 
     631 
     632 @keyframes bounceOutDown {/*向下,向上,再直接下去:透明度为0*/
     633     20% {
     634         -webkit-transform: translate3d(0, 10px, 0);
     635         transform: translate3d(0, 10px, 0);
     636     }
     637 
     638     40%,
     639     45% {
     640         opacity: 1;
     641         -webkit-transform: translate3d(0, -20px, 0);
     642         transform: translate3d(0, -20px, 0);
     643     }
     644 
     645     to {
     646         opacity: 0;
     647         -webkit-transform: translate3d(0, 2000px, 0);
     648         transform: translate3d(0, 2000px, 0);
     649     }
     650 }
     651 
     652 .bounceOutDown {
     653     -webkit-animation-name: bounceOutDown;
     654     animation-name: bounceOutDown;
     655 }
     656 
     657 
     658 @keyframes bounceOutLeft {/*x轴向右一点,再直接向左,透明度变为0*/
     659     20% {
     660         opacity: 1;
     661         -webkit-transform: translate3d(20px, 0, 0);
     662         transform: translate3d(20px, 0, 0);
     663     }
     664 
     665     to {
     666         opacity: 0;
     667         -webkit-transform: translate3d(-2000px, 0, 0);
     668         transform: translate3d(-2000px, 0, 0);
     669     }
     670 }
     671 
     672 .bounceOutLeft {
     673     -webkit-animation-name: bounceOutLeft;
     674     animation-name: bounceOutLeft;
     675 }
     676 
     677 
     678 @keyframes bounceOutRight {
     679     20% {
     680         opacity: 1;
     681         -webkit-transform: translate3d(-20px, 0, 0);
     682         transform: translate3d(-20px, 0, 0);
     683     }
     684 
     685     to {
     686         opacity: 0;
     687         -webkit-transform: translate3d(2000px, 0, 0);
     688         transform: translate3d(2000px, 0, 0);
     689     }
     690 }
     691 
     692 .bounceOutRight {
     693     -webkit-animation-name: bounceOutRight;
     694     animation-name: bounceOutRight;
     695 }
     696 
     697 
     698 @keyframes bounceOutUp {
     699     20% {
     700         -webkit-transform: translate3d(0, -10px, 0);
     701         transform: translate3d(0, -10px, 0);
     702     }
     703 
     704     40%,
     705     45% {
     706         opacity: 1;
     707         -webkit-transform: translate3d(0, 20px, 0);
     708         transform: translate3d(0, 20px, 0);
     709     }
     710 
     711     to {
     712         opacity: 0;
     713         -webkit-transform: translate3d(0, -2000px, 0);
     714         transform: translate3d(0, -2000px, 0);
     715     }
     716 }
     717 
     718 .bounceOutUp {
     719     -webkit-animation-name: bounceOutUp;
     720     animation-name: bounceOutUp;
     721 }
     722 
     723 
     724 @keyframes fadeIn {
     725     from {
     726         opacity: 0;
     727     }
     728 
     729     to {
     730         opacity: 1;
     731     }
     732 }
     733 
     734 .fadeIn {
     735     -webkit-animation-name: fadeIn;
     736     animation-name: fadeIn;
     737 }
     738 
     739 
     740 @keyframes fadeInDown {
     741     from {
     742         opacity: 0;
     743         -webkit-transform: translate3d(0, -100%, 0);
     744         transform: translate3d(0, -100%, 0);
     745     }
     746 
     747     to {
     748         opacity: 1;
     749         -webkit-transform: translate3d(0, 0, 0);
     750         transform: translate3d(0, 0, 0);
     751     }
     752 }
     753 
     754 .fadeInDown {
     755     -webkit-animation-name: fadeInDown;
     756     animation-name: fadeInDown;
     757 }
     758 
     759 @keyframes fadeInDownBig {
     760     from {
     761         opacity: 0;
     762         -webkit-transform: translate3d(0, -2000px, 0);
     763         transform: translate3d(0, -2000px, 0);
     764     }
     765 
     766     to {
     767         opacity: 1;
     768         -webkit-transform: translate3d(0, 0, 0);
     769         transform: translate3d(0, 0, 0);
     770     }
     771 }
     772 
     773 .fadeInDownBig {
     774     -webkit-animation-name: fadeInDownBig;
     775     animation-name: fadeInDownBig;
     776 }
     777 
     778 
     779 
     780 @keyframes fadeInLeft {
     781     from {
     782         opacity: 0;
     783         -webkit-transform: translate3d(-100%, 0, 0);
     784         transform: translate3d(-100%, 0, 0);
     785     }
     786 
     787     to {
     788         opacity: 1;
     789         -webkit-transform: translate3d(0, 0, 0);
     790         transform: translate3d(0, 0, 0);
     791     }
     792 }
     793 
     794 .fadeInLeft {
     795     -webkit-animation-name: fadeInLeft;
     796     animation-name: fadeInLeft;
     797 }
     798 
     799 
     800 
     801 @keyframes fadeInLeftBig {
     802     from {
     803         opacity: 0;
     804         -webkit-transform: translate3d(-2000px, 0, 0);
     805         transform: translate3d(-2000px, 0, 0);
     806     }
     807 
     808     to {
     809         opacity: 1;
     810         -webkit-transform: translate3d(0, 0, 0);
     811         transform: translate3d(0, 0, 0);
     812     }
     813 }
     814 
     815 .fadeInLeftBig {
     816     -webkit-animation-name: fadeInLeftBig;
     817     animation-name: fadeInLeftBig;
     818 }
     819 
     820 
     821 
     822 @keyframes fadeInRight {
     823     from {
     824         opacity: 0;
     825         -webkit-transform: translate3d(100%, 0, 0);
     826         transform: translate3d(100%, 0, 0);
     827     }
     828 
     829     to {
     830         opacity: 1;
     831         -webkit-transform: translate3d(0, 0, 0);
     832         transform: translate3d(0, 0, 0);
     833     }
     834 }
     835 
     836 .fadeInRight {
     837     -webkit-animation-name: fadeInRight;
     838     animation-name: fadeInRight;
     839 }
     840 
     841 
     842 @keyframes fadeInRightBig {
     843     from {
     844         opacity: 0;
     845         -webkit-transform: translate3d(2000px, 0, 0);
     846         transform: translate3d(2000px, 0, 0);
     847     }
     848 
     849     to {
     850         opacity: 1;
     851         -webkit-transform: translate3d(0, 0, 0);
     852         transform: translate3d(0, 0, 0);
     853     }
     854 }
     855 
     856 .fadeInRightBig {
     857     -webkit-animation-name: fadeInRightBig;
     858     animation-name: fadeInRightBig;
     859 }
     860 
     861 
     862 @keyframes fadeInUp {
     863     from {
     864         opacity: 0;
     865         -webkit-transform: translate3d(0, 100%, 0);
     866         transform: translate3d(0, 100%, 0);
     867     }
     868 
     869     to {
     870         opacity: 1;
     871         -webkit-transform: translate3d(0, 0, 0);
     872         transform: translate3d(0, 0, 0);
     873     }
     874 }
     875 
     876 .fadeInUp {
     877     -webkit-animation-name: fadeInUp;
     878     animation-name: fadeInUp;
     879 }
     880 
     881 @-webkit-keyframes fadeInUpBig {
     882     from {
     883         opacity: 0;
     884         -webkit-transform: translate3d(0, 2000px, 0);
     885         transform: translate3d(0, 2000px, 0);
     886     }
     887 
     888     to {
     889         opacity: 1;
     890         -webkit-transform: translate3d(0, 0, 0);
     891         transform: translate3d(0, 0, 0);
     892     }
     893 }
     894 
     895 @keyframes fadeInUpBig {
     896     from {
     897         opacity: 0;
     898         -webkit-transform: translate3d(0, 2000px, 0);
     899         transform: translate3d(0, 2000px, 0);
     900     }
     901 
     902     to {
     903         opacity: 1;
     904         -webkit-transform: translate3d(0, 0, 0);
     905         transform: translate3d(0, 0, 0);
     906     }
     907 }
     908 
     909 .fadeInUpBig {
     910     -webkit-animation-name: fadeInUpBig;
     911     animation-name: fadeInUpBig;
     912 }
     913 
     914 @-webkit-keyframes fadeOut {
     915     from {
     916         opacity: 1;
     917     }
     918 
     919     to {
     920         opacity: 0;
     921     }
     922 }
     923 
     924 @keyframes fadeOut {
     925     from {
     926         opacity: 1;
     927     }
     928 
     929     to {
     930         opacity: 0;
     931     }
     932 }
     933 
     934 .fadeOut {
     935     -webkit-animation-name: fadeOut;
     936     animation-name: fadeOut;
     937 }
     938 
     939 @-webkit-keyframes fadeOutDown {
     940     from {
     941         opacity: 1;
     942     }
     943 
     944     to {
     945         opacity: 0;
     946         -webkit-transform: translate3d(0, 100%, 0);
     947         transform: translate3d(0, 100%, 0);
     948     }
     949 }
     950 
     951 @keyframes fadeOutDown {
     952     from {
     953         opacity: 1;
     954     }
     955 
     956     to {
     957         opacity: 0;
     958         -webkit-transform: translate3d(0, 100%, 0);
     959         transform: translate3d(0, 100%, 0);
     960     }
     961 }
     962 
     963 .fadeOutDown {
     964     -webkit-animation-name: fadeOutDown;
     965     animation-name: fadeOutDown;
     966 }
     967 
     968 @-webkit-keyframes fadeOutDownBig {
     969     from {
     970         opacity: 1;
     971     }
     972 
     973     to {
     974         opacity: 0;
     975         -webkit-transform: translate3d(0, 2000px, 0);
     976         transform: translate3d(0, 2000px, 0);
     977     }
     978 }
     979 
     980 @keyframes fadeOutDownBig {
     981     from {
     982         opacity: 1;
     983     }
     984 
     985     to {
     986         opacity: 0;
     987         -webkit-transform: translate3d(0, 2000px, 0);
     988         transform: translate3d(0, 2000px, 0);
     989     }
     990 }
     991 
     992 .fadeOutDownBig {
     993     -webkit-animation-name: fadeOutDownBig;
     994     animation-name: fadeOutDownBig;
     995 }
     996 
     997 @-webkit-keyframes fadeOutLeft {
     998     from {
     999         opacity: 1;
    1000     }
    1001 
    1002     to {
    1003         opacity: 0;
    1004         -webkit-transform: translate3d(-100%, 0, 0);
    1005         transform: translate3d(-100%, 0, 0);
    1006     }
    1007 }
    1008 
    1009 @keyframes fadeOutLeft {
    1010     from {
    1011         opacity: 1;
    1012     }
    1013 
    1014     to {
    1015         opacity: 0;
    1016         -webkit-transform: translate3d(-100%, 0, 0);
    1017         transform: translate3d(-100%, 0, 0);
    1018     }
    1019 }
    1020 
    1021 .fadeOutLeft {
    1022     -webkit-animation-name: fadeOutLeft;
    1023     animation-name: fadeOutLeft;
    1024 }
    1025 
    1026 @-webkit-keyframes fadeOutLeftBig {
    1027     from {
    1028         opacity: 1;
    1029     }
    1030 
    1031     to {
    1032         opacity: 0;
    1033         -webkit-transform: translate3d(-2000px, 0, 0);
    1034         transform: translate3d(-2000px, 0, 0);
    1035     }
    1036 }
    1037 
    1038 @keyframes fadeOutLeftBig {
    1039     from {
    1040         opacity: 1;
    1041     }
    1042 
    1043     to {
    1044         opacity: 0;
    1045         -webkit-transform: translate3d(-2000px, 0, 0);
    1046         transform: translate3d(-2000px, 0, 0);
    1047     }
    1048 }
    1049 
    1050 .fadeOutLeftBig {
    1051     -webkit-animation-name: fadeOutLeftBig;
    1052     animation-name: fadeOutLeftBig;
    1053 }
    1054 
    1055 @-webkit-keyframes fadeOutRight {
    1056     from {
    1057         opacity: 1;
    1058     }
    1059 
    1060     to {
    1061         opacity: 0;
    1062         -webkit-transform: translate3d(100%, 0, 0);
    1063         transform: translate3d(100%, 0, 0);
    1064     }
    1065 }
    1066 
    1067 @keyframes fadeOutRight {
    1068     from {
    1069         opacity: 1;
    1070     }
    1071 
    1072     to {
    1073         opacity: 0;
    1074         -webkit-transform: translate3d(100%, 0, 0);
    1075         transform: translate3d(100%, 0, 0);
    1076     }
    1077 }
    1078 
    1079 .fadeOutRight {
    1080     -webkit-animation-name: fadeOutRight;
    1081     animation-name: fadeOutRight;
    1082 }
    1083 
    1084 @-webkit-keyframes fadeOutRightBig {
    1085     from {
    1086         opacity: 1;
    1087     }
    1088 
    1089     to {
    1090         opacity: 0;
    1091         -webkit-transform: translate3d(2000px, 0, 0);
    1092         transform: translate3d(2000px, 0, 0);
    1093     }
    1094 }
    1095 
    1096 @keyframes fadeOutRightBig {
    1097     from {
    1098         opacity: 1;
    1099     }
    1100 
    1101     to {
    1102         opacity: 0;
    1103         -webkit-transform: translate3d(2000px, 0, 0);
    1104         transform: translate3d(2000px, 0, 0);
    1105     }
    1106 }
    1107 
    1108 .fadeOutRightBig {
    1109     -webkit-animation-name: fadeOutRightBig;
    1110     animation-name: fadeOutRightBig;
    1111 }
    1112 
    1113 @-webkit-keyframes fadeOutUp {
    1114     from {
    1115         opacity: 1;
    1116     }
    1117 
    1118     to {
    1119         opacity: 0;
    1120         -webkit-transform: translate3d(0, -100%, 0);
    1121         transform: translate3d(0, -100%, 0);
    1122     }
    1123 }
    1124 
    1125 @keyframes fadeOutUp {
    1126     from {
    1127         opacity: 1;
    1128     }
    1129 
    1130     to {
    1131         opacity: 0;
    1132         -webkit-transform: translate3d(0, -100%, 0);
    1133         transform: translate3d(0, -100%, 0);
    1134     }
    1135 }
    1136 
    1137 .fadeOutUp {
    1138     -webkit-animation-name: fadeOutUp;
    1139     animation-name: fadeOutUp;
    1140 }
    1141 
    1142 @-webkit-keyframes fadeOutUpBig {
    1143     from {
    1144         opacity: 1;
    1145     }
    1146 
    1147     to {
    1148         opacity: 0;
    1149         -webkit-transform: translate3d(0, -2000px, 0);
    1150         transform: translate3d(0, -2000px, 0);
    1151     }
    1152 }
    1153 
    1154 @keyframes fadeOutUpBig {
    1155     from {
    1156         opacity: 1;
    1157     }
    1158 
    1159     to {
    1160         opacity: 0;
    1161         -webkit-transform: translate3d(0, -2000px, 0);
    1162         transform: translate3d(0, -2000px, 0);
    1163     }
    1164 }
    1165 
    1166 .fadeOutUpBig {
    1167     -webkit-animation-name: fadeOutUpBig;
    1168     animation-name: fadeOutUpBig;
    1169 }
    1170 
    1171 
    1172 @keyframes flip {
    1173     from {
    1174         -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
    1175         rotate3d(0, 1, 0, -360deg);
    1176         transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, -360deg);
    1177         -webkit-animation-timing-function: ease-out;
    1178         animation-timing-function: ease-out;
    1179     }
    1180 
    1181     40% {
    1182         -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
    1183         rotate3d(0, 1, 0, -190deg);
    1184         transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
    1185         rotate3d(0, 1, 0, -190deg);
    1186         -webkit-animation-timing-function: ease-out;
    1187         animation-timing-function: ease-out;
    1188     }
    1189 
    1190     50% {
    1191         -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
    1192         rotate3d(0, 1, 0, -170deg);
    1193         transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 150px)
    1194         rotate3d(0, 1, 0, -170deg);
    1195         -webkit-animation-timing-function: ease-in;
    1196         animation-timing-function: ease-in;
    1197     }
    1198 
    1199     80% {
    1200         -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
    1201         rotate3d(0, 1, 0, 0deg);
    1202         transform: perspective(400px) scale3d(0.95, 0.95, 0.95) translate3d(0, 0, 0)
    1203         rotate3d(0, 1, 0, 0deg);
    1204         -webkit-animation-timing-function: ease-in;
    1205         animation-timing-function: ease-in;
    1206     }
    1207 
    1208     to {
    1209         -webkit-transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0)
    1210         rotate3d(0, 1, 0, 0deg);
    1211         transform: perspective(400px) scale3d(1, 1, 1) translate3d(0, 0, 0) rotate3d(0, 1, 0, 0deg);
    1212         -webkit-animation-timing-function: ease-in;
    1213         animation-timing-function: ease-in;
    1214     }
    1215 }
    1216 
    1217 .animated.flip {
    1218     -webkit-backface-visibility: visible;
    1219     backface-visibility: visible;
    1220     -webkit-animation-name: flip;
    1221     animation-name: flip;
    1222 }
    1223 
    1224 @-webkit-keyframes flipInX {
    1225     from {
    1226         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1227         transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1228         -webkit-animation-timing-function: ease-in;
    1229         animation-timing-function: ease-in;
    1230         opacity: 0;
    1231     }
    1232 
    1233     40% {
    1234         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1235         transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1236         -webkit-animation-timing-function: ease-in;
    1237         animation-timing-function: ease-in;
    1238     }
    1239 
    1240     60% {
    1241         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    1242         transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    1243         opacity: 1;
    1244     }
    1245 
    1246     80% {
    1247         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    1248         transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    1249     }
    1250 
    1251     to {
    1252         -webkit-transform: perspective(400px);
    1253         transform: perspective(400px);
    1254     }
    1255 }
    1256 
    1257 @keyframes flipInX {
    1258     from {
    1259         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1260         transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1261         -webkit-animation-timing-function: ease-in;
    1262         animation-timing-function: ease-in;
    1263         opacity: 0;
    1264     }
    1265 
    1266     40% {
    1267         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1268         transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1269         -webkit-animation-timing-function: ease-in;
    1270         animation-timing-function: ease-in;
    1271     }
    1272 
    1273     60% {
    1274         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    1275         transform: perspective(400px) rotate3d(1, 0, 0, 10deg);
    1276         opacity: 1;
    1277     }
    1278 
    1279     80% {
    1280         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    1281         transform: perspective(400px) rotate3d(1, 0, 0, -5deg);
    1282     }
    1283 
    1284     to {
    1285         -webkit-transform: perspective(400px);
    1286         transform: perspective(400px);
    1287     }
    1288 }
    1289 
    1290 .flipInX {
    1291     -webkit-backface-visibility: visible !important;
    1292     backface-visibility: visible !important;
    1293     -webkit-animation-name: flipInX;
    1294     animation-name: flipInX;
    1295 }
    1296 
    1297 
    1298 @keyframes flipInY {
    1299     from {
    1300         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    1301         transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    1302         -webkit-animation-timing-function: ease-in;
    1303         animation-timing-function: ease-in;
    1304         opacity: 0;
    1305     }
    1306 
    1307     40% {
    1308         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    1309         transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
    1310         -webkit-animation-timing-function: ease-in;
    1311         animation-timing-function: ease-in;
    1312     }
    1313 
    1314     60% {
    1315         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    1316         transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
    1317         opacity: 1;
    1318     }
    1319 
    1320     80% {
    1321         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    1322         transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
    1323     }
    1324 
    1325     to {
    1326         -webkit-transform: perspective(400px);
    1327         transform: perspective(400px);
    1328     }
    1329 }
    1330 
    1331 .flipInY {
    1332     -webkit-backface-visibility: visible !important;
    1333     backface-visibility: visible !important;
    1334     -webkit-animation-name: flipInY;
    1335     animation-name: flipInY;
    1336 }
    1337 
    1338 
    1339 
    1340 @keyframes flipOutX {
    1341     from {
    1342         -webkit-transform: perspective(400px);
    1343         transform: perspective(400px);
    1344     }
    1345 
    1346     30% {
    1347         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1348         transform: perspective(400px) rotate3d(1, 0, 0, -20deg);
    1349         opacity: 1;
    1350     }
    1351 
    1352     to {
    1353         -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1354         transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    1355         opacity: 0;
    1356     }
    1357 }
    1358 
    1359 .flipOutX {
    1360     -webkit-animation-duration: 0.75s;
    1361     animation-duration: 0.75s;
    1362     -webkit-animation-name: flipOutX;
    1363     animation-name: flipOutX;
    1364     -webkit-backface-visibility: visible !important;
    1365     backface-visibility: visible !important;
    1366 }
    1367 
    1368 
    1369 @keyframes flipOutY {
    1370     from {
    1371         -webkit-transform: perspective(400px);
    1372         transform: perspective(400px);
    1373     }
    1374 
    1375     30% {
    1376         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    1377         transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
    1378         opacity: 1;
    1379     }
    1380 
    1381     to {
    1382         -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    1383         transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
    1384         opacity: 0;
    1385     }
    1386 }
    1387 
    1388 .flipOutY {
    1389     -webkit-animation-duration: 0.75s;
    1390     animation-duration: 0.75s;
    1391     -webkit-backface-visibility: visible !important;
    1392     backface-visibility: visible !important;
    1393     -webkit-animation-name: flipOutY;
    1394     animation-name: flipOutY;
    1395 }
    1396 
    1397 
    1398 @keyframes lightSpeedIn {
    1399     from {
    1400         -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg);
    1401         transform: translate3d(100%, 0, 0) skewX(-30deg);
    1402         opacity: 0;
    1403     }
    1404 
    1405     60% {
    1406         -webkit-transform: skewX(20deg);
    1407         transform: skewX(20deg);
    1408         opacity: 1;
    1409     }
    1410 
    1411     80% {
    1412         -webkit-transform: skewX(-5deg);
    1413         transform: skewX(-5deg);
    1414     }
    1415 
    1416     to {
    1417         -webkit-transform: translate3d(0, 0, 0);
    1418         transform: translate3d(0, 0, 0);
    1419     }
    1420 }
    1421 
    1422 .lightSpeedIn {
    1423     -webkit-animation-name: lightSpeedIn;
    1424     animation-name: lightSpeedIn;
    1425     -webkit-animation-timing-function: ease-out;
    1426     animation-timing-function: ease-out;
    1427 }
    1428 
    1429 
    1430 @keyframes lightSpeedOut {/*向右移动,倾斜,透明度变为0*/
    1431     from {
    1432         opacity: 1;
    1433     }
    1434 
    1435     to {
    1436         -webkit-transform: translate3d(100%, 0, 0) skewX(30deg);
    1437         transform: translate3d(100%, 0, 0) skewX(30deg);
    1438         opacity: 0;
    1439     }
    1440 }
    1441 
    1442 .lightSpeedOut {
    1443     -webkit-animation-name: lightSpeedOut;
    1444     animation-name: lightSpeedOut;
    1445     -webkit-animation-timing-function: ease-in;
    1446     animation-timing-function: ease-in;
    1447 }
    1448 
    1449 
    1450 @keyframes rotateIn {/*围绕圆点旋转-200度,透明度0--1*/
    1451     from {
    1452         -webkit-transform-origin: center;
    1453         transform-origin: center;
    1454         -webkit-transform: rotate3d(0, 0, 1, -200deg);
    1455         transform: rotate3d(0, 0, 1, -200deg);
    1456         opacity: 0;
    1457     }
    1458 
    1459     to {
    1460         -webkit-transform-origin: center;
    1461         transform-origin: center;
    1462         -webkit-transform: translate3d(0, 0, 0);
    1463         transform: translate3d(0, 0, 0);
    1464         opacity: 1;
    1465     }
    1466 }
    1467 
    1468 .rotateIn {
    1469     -webkit-animation-name: rotateIn;
    1470     animation-name: rotateIn;
    1471 }
    1472 
    1473 
    1474 @keyframes rotateInDownLeft {/*围绕左下角z轴旋转-45度,*/
    1475     from {
    1476         -webkit-transform-origin: left bottom;
    1477         transform-origin: left bottom;
    1478         -webkit-transform: rotate3d(0, 0, 1, -45deg);
    1479         transform: rotate3d(0, 0, 1, -45deg);
    1480         opacity: 0;
    1481     }
    1482 
    1483     to {
    1484         -webkit-transform-origin: left bottom;
    1485         transform-origin: left bottom;
    1486         -webkit-transform: translate3d(0, 0, 0);
    1487         transform: translate3d(0, 0, 0);
    1488         opacity: 1;
    1489     }
    1490 }
    1491 
    1492 .rotateInDownLeft {
    1493     -webkit-animation-name: rotateInDownLeft;
    1494     animation-name: rotateInDownLeft;
    1495 }
    1496 
    1497 
    1498 @keyframes rotateInDownRight {
    1499     from {
    1500         -webkit-transform-origin: right bottom;
    1501         transform-origin: right bottom;
    1502         -webkit-transform: rotate3d(0, 0, 1, 45deg);
    1503         transform: rotate3d(0, 0, 1, 45deg);
    1504         opacity: 0;
    1505     }
    1506 
    1507     to {
    1508         -webkit-transform-origin: right bottom;
    1509         transform-origin: right bottom;
    1510         -webkit-transform: translate3d(0, 0, 0);
    1511         transform: translate3d(0, 0, 0);
    1512         opacity: 1;
    1513     }
    1514 }
    1515 
    1516 .rotateInDownRight {
    1517     -webkit-animation-name: rotateInDownRight;
    1518     animation-name: rotateInDownRight;
    1519 }
    1520 
    1521 
    1522 @keyframes rotateInUpLeft {/*以左下角为旋转点,从下往上旋转*/
    1523     from {
    1524         -webkit-transform-origin: left bottom;
    1525         transform-origin: left bottom;
    1526         -webkit-transform: rotate3d(0, 0, 1, 45deg);
    1527         transform: rotate3d(0, 0, 1, 45deg);
    1528         opacity: 0;
    1529     }
    1530 
    1531     to {
    1532         -webkit-transform-origin: left bottom;
    1533         transform-origin: left bottom;
    1534         -webkit-transform: translate3d(0, 0, 0);
    1535         transform: translate3d(0, 0, 0);
    1536         opacity: 1;
    1537     }
    1538 }
    1539 
    1540 .rotateInUpLeft {
    1541     -webkit-animation-name: rotateInUpLeft;
    1542     animation-name: rotateInUpLeft;
    1543 }
    1544 
    1545 @keyframes rotateInUpRight {
    1546     from {
    1547         -webkit-transform-origin: right bottom;
    1548         transform-origin: right bottom;
    1549         -webkit-transform: rotate3d(0, 0, 1, -90deg);
    1550         transform: rotate3d(0, 0, 1, -90deg);
    1551         opacity: 0;
    1552     }
    1553 
    1554     to {
    1555         -webkit-transform-origin: right bottom;
    1556         transform-origin: right bottom;
    1557         -webkit-transform: translate3d(0, 0, 0);
    1558         transform: translate3d(0, 0, 0);
    1559         opacity: 1;
    1560     }
    1561 }
    1562 
    1563 .rotateInUpRight {
    1564     -webkit-animation-name: rotateInUpRight;
    1565     animation-name: rotateInUpRight;
    1566 }
    1567 
    1568 @keyframes rotateOut {
    1569     from {
    1570         -webkit-transform-origin: center;
    1571         transform-origin: center;
    1572         opacity: 1;
    1573     }
    1574 
    1575     to {
    1576         -webkit-transform-origin: center;
    1577         transform-origin: center;
    1578         -webkit-transform: rotate3d(0, 0, 1, 200deg);
    1579         transform: rotate3d(0, 0, 1, 200deg);
    1580         opacity: 0;
    1581     }
    1582 }
    1583 
    1584 .rotateOut {
    1585     -webkit-animation-name: rotateOut;
    1586     animation-name: rotateOut;
    1587 }
    1588 
    1589 
    1590 @keyframes rotateOutDownLeft {
    1591     from {
    1592         -webkit-transform-origin: left bottom;
    1593         transform-origin: left bottom;
    1594         opacity: 1;
    1595     }
    1596 
    1597     to {
    1598         -webkit-transform-origin: left bottom;
    1599         transform-origin: left bottom;
    1600         -webkit-transform: rotate3d(0, 0, 1, 45deg);
    1601         transform: rotate3d(0, 0, 1, 45deg);
    1602         opacity: 0;
    1603     }
    1604 }
    1605 
    1606 .rotateOutDownLeft {
    1607     -webkit-animation-name: rotateOutDownLeft;
    1608     animation-name: rotateOutDownLeft;
    1609 }
    1610 
    1611 
    1612 @keyframes rotateOutDownRight {/*z轴,右下角,旋转45度,透明度1-0*/
    1613     from {
    1614         -webkit-transform-origin: right bottom;
    1615         transform-origin: right bottom;
    1616         opacity: 1;
    1617     }
    1618 
    1619     to {
    1620         -webkit-transform-origin: right bottom;
    1621         transform-origin: right bottom;
    1622         -webkit-transform: rotate3d(0, 0, 1, -45deg);
    1623         transform: rotate3d(0, 0, 1, -45deg);
    1624         opacity: 0;
    1625     }
    1626 }
    1627 
    1628 .rotateOutDownRight {
    1629     -webkit-animation-name: rotateOutDownRight;
    1630     animation-name: rotateOutDownRight;
    1631 }
    1632 
    1633 
    1634 @keyframes rotateOutUpLeft {
    1635     from {
    1636         -webkit-transform-origin: left bottom;
    1637         transform-origin: left bottom;
    1638         opacity: 1;
    1639     }
    1640 
    1641     to {
    1642         -webkit-transform-origin: left bottom;
    1643         transform-origin: left bottom;
    1644         -webkit-transform: rotate3d(0, 0, 1, -45deg);
    1645         transform: rotate3d(0, 0, 1, -45deg);
    1646         opacity: 0;
    1647     }
    1648 }
    1649 
    1650 .rotateOutUpLeft {
    1651     -webkit-animation-name: rotateOutUpLeft;
    1652     animation-name: rotateOutUpLeft;
    1653 }
    1654 
    1655 
    1656 @keyframes rotateOutUpRight {
    1657     from {
    1658         -webkit-transform-origin: right bottom;
    1659         transform-origin: right bottom;
    1660         opacity: 1;
    1661     }
    1662 
    1663     to {
    1664         -webkit-transform-origin: right bottom;
    1665         transform-origin: right bottom;
    1666         -webkit-transform: rotate3d(0, 0, 1, 90deg);
    1667         transform: rotate3d(0, 0, 1, 90deg);
    1668         opacity: 0;
    1669     }
    1670 }
    1671 
    1672 .rotateOutUpRight {
    1673     -webkit-animation-name: rotateOutUpRight;
    1674     animation-name: rotateOutUpRight;
    1675 }
    1676 
    1677 
    1678 @keyframes hinge {/*像右侧的钉子掉了,相框掉到了地上;*/
    1679     0% {
    1680         -webkit-transform-origin: top left;
    1681         transform-origin: top left;
    1682         -webkit-animation-timing-function: ease-in-out;
    1683         animation-timing-function: ease-in-out;
    1684     }
    1685 
    1686     20%,
    1687     60% {
    1688         -webkit-transform: rotate3d(0, 0, 1, 80deg);
    1689         transform: rotate3d(0, 0, 1, 80deg);
    1690         -webkit-transform-origin: top left;
    1691         transform-origin: top left;
    1692         -webkit-animation-timing-function: ease-in-out;
    1693         animation-timing-function: ease-in-out;
    1694     }
    1695 
    1696     40%,
    1697     80% {
    1698         -webkit-transform: rotate3d(0, 0, 1, 60deg);
    1699         transform: rotate3d(0, 0, 1, 60deg);
    1700         -webkit-transform-origin: top left;
    1701         transform-origin: top left;
    1702         -webkit-animation-timing-function: ease-in-out;
    1703         animation-timing-function: ease-in-out;
    1704         opacity: 1;
    1705     }
    1706 
    1707     to {
    1708         -webkit-transform: translate3d(0, 700px, 0);
    1709         transform: translate3d(0, 700px, 0);
    1710         opacity: 0;
    1711     }
    1712 }
    1713 
    1714 .hinge {
    1715     -webkit-animation-duration: 2s;
    1716     animation-duration: 2s;
    1717     -webkit-animation-name: hinge;
    1718     animation-name: hinge;
    1719 }
    1720 
    1721 
    1722 @keyframes jackInTheBox {
    1723     from {
    1724         opacity: 0;
    1725         -webkit-transform: scale(0.1) rotate(30deg);
    1726         transform: scale(0.1) rotate(30deg);
    1727         -webkit-transform-origin: center bottom;
    1728         transform-origin: center bottom;
    1729     }
    1730 
    1731     50% {
    1732         -webkit-transform: rotate(-10deg);
    1733         transform: rotate(-10deg);
    1734     }
    1735 
    1736     70% {
    1737         -webkit-transform: rotate(3deg);
    1738         transform: rotate(3deg);
    1739     }
    1740 
    1741     to {
    1742         opacity: 1;
    1743         -webkit-transform: scale(1);
    1744         transform: scale(1);
    1745     }
    1746 }
    1747 
    1748 .jackInTheBox {
    1749     -webkit-animation-name: jackInTheBox;
    1750     animation-name: jackInTheBox;
    1751 }
    1752 
    1753 
    1754 
    1755 @keyframes rollIn {/*x轴从-100%运动到0,同时从-120度到0度*/
    1756     from {
    1757         opacity: 0;
    1758         -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    1759         transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg);
    1760     }
    1761 
    1762     to {
    1763         opacity: 1;
    1764         -webkit-transform: translate3d(0, 0, 0);
    1765         transform: translate3d(0, 0, 0);
    1766     }
    1767 }
    1768 
    1769 .rollIn {
    1770     -webkit-animation-name: rollIn;
    1771     animation-name: rollIn;
    1772 }
    1773 
    1774 
    1775 @keyframes rollOut {/*向右100%,旋转120度*/
    1776     from {
    1777         opacity: 1;
    1778     }
    1779 
    1780     to {
    1781         opacity: 0;
    1782         -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    1783         transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg);
    1784     }
    1785 }
    1786 
    1787 .rollOut {
    1788     -webkit-animation-name: rollOut;
    1789     animation-name: rollOut;
    1790 }
    1791 
    1792 
    1793 @keyframes zoomIn {/*缩放从0.3--1,透明度从0-1*/
    1794     from {
    1795         opacity: 0;
    1796         -webkit-transform: scale3d(0.3, 0.3, 0.3);
    1797         transform: scale3d(0.3, 0.3, 0.3);
    1798     }
    1799 
    1800     50% {
    1801         opacity: 1;
    1802     }
    1803 }
    1804 
    1805 .zoomIn {
    1806     -webkit-animation-name: zoomIn;
    1807     animation-name: zoomIn;
    1808 }
    1809 
    1810 
    1811 @keyframes zoomInDown {/*从上面掉下来,逐渐放大,*/
    1812     from {
    1813         opacity: 0;
    1814         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    1815         transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0);
    1816         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1817         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1818     }
    1819 
    1820     60% {
    1821         opacity: 1;
    1822         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    1823         transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    1824         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1825         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1826     }
    1827 }
    1828 
    1829 .zoomInDown {
    1830     -webkit-animation-name: zoomInDown;
    1831     animation-name: zoomInDown;
    1832 }
    1833 
    1834 
    1835 @keyframes zoomInLeft {/*从左行邮,逐渐移动并变大*/
    1836     from {
    1837         opacity: 0;
    1838         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    1839         transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0);
    1840         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1841         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1842     }
    1843 
    1844     60% {
    1845         opacity: 1;
    1846         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    1847         transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0);
    1848         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1849         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1850     }
    1851 }
    1852 
    1853 .zoomInLeft {
    1854     -webkit-animation-name: zoomInLeft;
    1855     animation-name: zoomInLeft;
    1856 }
    1857 
    1858 
    1859 @keyframes zoomInRight {
    1860     from {
    1861         opacity: 0;
    1862         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    1863         transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
    1864         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1865         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1866     }
    1867 
    1868     60% {
    1869         opacity: 1;
    1870         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    1871         transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
    1872         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1873         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1874     }
    1875 }
    1876 
    1877 .zoomInRight {
    1878     -webkit-animation-name: zoomInRight;
    1879     animation-name: zoomInRight;
    1880 }
    1881 
    1882 
    1883 @keyframes zoomInUp {
    1884     from {
    1885         opacity: 0;
    1886         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    1887         transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0);
    1888         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1889         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1890     }
    1891 
    1892     60% {
    1893         opacity: 1;
    1894         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    1895         transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    1896         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1897         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1898     }
    1899 }
    1900 
    1901 .zoomInUp {
    1902     -webkit-animation-name: zoomInUp;
    1903     animation-name: zoomInUp;
    1904 }
    1905 
    1906 
    1907 @keyframes zoomOut {/*缩小;收回去*/
    1908     from {
    1909         opacity: 1;
    1910     }
    1911 
    1912     50% {
    1913         opacity: 0;
    1914         -webkit-transform: scale3d(0.3, 0.3, 0.3);
    1915         transform: scale3d(0.3, 0.3, 0.3);
    1916     }
    1917 
    1918     to {
    1919         opacity: 0;
    1920     }
    1921 }
    1922 
    1923 .zoomOut {
    1924     -webkit-animation-name: zoomOut;
    1925     animation-name: zoomOut;
    1926 }
    1927 
    1928 
    1929 @keyframes zoomOutDown {/*先缩小,然后掉下去*/
    1930     40% {
    1931         opacity: 1;
    1932         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    1933         transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0);
    1934         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1935         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    1936     }
    1937 
    1938     to {
    1939         opacity: 0;
    1940         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    1941         transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0);
    1942         -webkit-transform-origin: center bottom;
    1943         transform-origin: center bottom;
    1944         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1945         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    1946     }
    1947 }
    1948 
    1949 .zoomOutDown {
    1950     -webkit-animation-name: zoomOutDown;
    1951     animation-name: zoomOutDown;
    1952 }
    1953 
    1954 
    1955 @keyframes zoomOutLeft {/*向左,缩小,透明度0*/
    1956     40% {
    1957         opacity: 1;
    1958         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    1959         transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0);
    1960     }
    1961 
    1962     to {
    1963         opacity: 0;
    1964         -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0);
    1965         transform: scale(0.1) translate3d(-2000px, 0, 0);
    1966         -webkit-transform-origin: left center;
    1967         transform-origin: left center;
    1968     }
    1969 }
    1970 
    1971 .zoomOutLeft {
    1972     -webkit-animation-name: zoomOutLeft;
    1973     animation-name: zoomOutLeft;
    1974 }
    1975 
    1976 
    1977 @keyframes zoomOutRight {
    1978     40% {
    1979         opacity: 1;
    1980         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    1981         transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0);
    1982     }
    1983 
    1984     to {
    1985         opacity: 0;
    1986         -webkit-transform: scale(0.1) translate3d(2000px, 0, 0);
    1987         transform: scale(0.1) translate3d(2000px, 0, 0);
    1988         -webkit-transform-origin: right center;
    1989         transform-origin: right center;
    1990     }
    1991 }
    1992 
    1993 .zoomOutRight {
    1994     -webkit-animation-name: zoomOutRight;
    1995     animation-name: zoomOutRight;
    1996 }
    1997 
    1998 @keyframes zoomOutUp {
    1999     40% {
    2000         opacity: 1;
    2001         -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    2002         transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0);
    2003         -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    2004         animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
    2005     }
    2006 
    2007     to {
    2008         opacity: 0;
    2009         -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    2010         transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0);
    2011         -webkit-transform-origin: center bottom;
    2012         transform-origin: center bottom;
    2013         -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    2014         animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
    2015     }
    2016 }
    2017 
    2018 .zoomOutUp {
    2019     -webkit-animation-name: zoomOutUp;
    2020     animation-name: zoomOutUp;
    2021 }
    2022 
    2023 
    2024 @keyframes slideInDown {
    2025     from {
    2026         -webkit-transform: translate3d(0, -100%, 0);
    2027         transform: translate3d(0, -100%, 0);
    2028         visibility: visible;
    2029     }
    2030 
    2031     to {
    2032         -webkit-transform: translate3d(0, 0, 0);
    2033         transform: translate3d(0, 0, 0);
    2034     }
    2035 }
    2036 
    2037 .slideInDown {
    2038     -webkit-animation-name: slideInDown;
    2039     animation-name: slideInDown;
    2040 }
    2041 
    2042 
    2043 
    2044 @keyframes slideInLeft {
    2045     from {
    2046         -webkit-transform: translate3d(-100%, 0, 0);
    2047         transform: translate3d(-100%, 0, 0);
    2048         visibility: visible;
    2049     }
    2050 
    2051     to {
    2052         -webkit-transform: translate3d(0, 0, 0);
    2053         transform: translate3d(0, 0, 0);
    2054     }
    2055 }
    2056 
    2057 .slideInLeft {
    2058     -webkit-animation-name: slideInLeft;
    2059     animation-name: slideInLeft;
    2060 }
    2061 
    2062 
    2063 @keyframes slideInRight {
    2064     from {
    2065         -webkit-transform: translate3d(100%, 0, 0);
    2066         transform: translate3d(100%, 0, 0);
    2067         visibility: visible;
    2068     }
    2069 
    2070     to {
    2071         -webkit-transform: translate3d(0, 0, 0);
    2072         transform: translate3d(0, 0, 0);
    2073     }
    2074 }
    2075 
    2076 .slideInRight {
    2077     -webkit-animation-name: slideInRight;
    2078     animation-name: slideInRight;
    2079 }
    2080 
    2081 
    2082 @keyframes slideInUp {/*y轴100%---0*/
    2083     from {
    2084         -webkit-transform: translate3d(0, 100%, 0);
    2085         transform: translate3d(0, 100%, 0);
    2086         visibility: visible;
    2087     }
    2088 
    2089     to {
    2090         -webkit-transform: translate3d(0, 0, 0);
    2091         transform: translate3d(0, 0, 0);
    2092     }
    2093 }
    2094 
    2095 .slideInUp {
    2096     -webkit-animation-name: slideInUp;
    2097     animation-name: slideInUp;
    2098 }
    2099 
    2100 @-webkit-keyframes slideOutDown {/*y轴0---100%*/
    2101     from {
    2102         -webkit-transform: translate3d(0, 0, 0);
    2103         transform: translate3d(0, 0, 0);
    2104     }
    2105 
    2106     to {
    2107         visibility: hidden;
    2108         -webkit-transform: translate3d(0, 100%, 0);
    2109         transform: translate3d(0, 100%, 0);
    2110     }
    2111 }
    2112 
    2113 @keyframes slideOutDown {
    2114     from {
    2115         -webkit-transform: translate3d(0, 0, 0);
    2116         transform: translate3d(0, 0, 0);
    2117     }
    2118 
    2119     to {
    2120         visibility: hidden;
    2121         -webkit-transform: translate3d(0, 100%, 0);
    2122         transform: translate3d(0, 100%, 0);
    2123     }
    2124 }
    2125 
    2126 .slideOutDown {
    2127     -webkit-animation-name: slideOutDown;
    2128     animation-name: slideOutDown;
    2129 }
    2130 
    2131 
    2132 @keyframes slideOutLeft {
    2133     from {
    2134         -webkit-transform: translate3d(0, 0, 0);
    2135         transform: translate3d(0, 0, 0);
    2136     }
    2137 
    2138     to {
    2139         visibility: hidden;
    2140         -webkit-transform: translate3d(-100%, 0, 0);
    2141         transform: translate3d(-100%, 0, 0);
    2142     }
    2143 }
    2144 
    2145 .slideOutLeft {
    2146     -webkit-animation-name: slideOutLeft;
    2147     animation-name: slideOutLeft;
    2148 }
    2149 
    2150 
    2151 @keyframes slideOutRight {
    2152     from {
    2153         -webkit-transform: translate3d(0, 0, 0);
    2154         transform: translate3d(0, 0, 0);
    2155     }
    2156 
    2157     to {
    2158         visibility: hidden;
    2159         -webkit-transform: translate3d(100%, 0, 0);
    2160         transform: translate3d(100%, 0, 0);
    2161     }
    2162 }
    2163 
    2164 .slideOutRight {
    2165     -webkit-animation-name: slideOutRight;
    2166     animation-name: slideOutRight;
    2167 }
    2168 
    2169 
    2170 @keyframes slideOutUp {
    2171     from {
    2172         -webkit-transform: translate3d(0, 0, 0);
    2173         transform: translate3d(0, 0, 0);
    2174     }
    2175 
    2176     to {
    2177         visibility: hidden;
    2178         -webkit-transform: translate3d(0, -100%, 0);
    2179         transform: translate3d(0, -100%, 0);
    2180     }
    2181 }
    2182 
    2183 .slideOutUp {
    2184     -webkit-animation-name: slideOutUp;
    2185     animation-name: slideOutUp;
    2186 }
    2187 
    2188 /*动画持续时间*/
    2189 .animated {
    2190     -webkit-animation-duration: 1s;
    2191     animation-duration: 1s;
    2192     -webkit-animation-fill-mode: both;
    2193     animation-fill-mode: both;
    2194 }
    2195 
    2196 /*动画无限循环*/
    2197 .animated.infinite {
    2198     -webkit-animation-iteration-count: infinite;
    2199     animation-iteration-count: infinite;
    2200 }
    2201 /*动画延时*/
    2202 .animated.delay-1s {
    2203     -webkit-animation-delay: 1s;
    2204     animation-delay: 1s;
    2205 }
    2206 
    2207 .animated.delay-2s {
    2208     -webkit-animation-delay: 2s;
    2209     animation-delay: 2s;
    2210 }
    2211 
    2212 .animated.delay-3s {
    2213     -webkit-animation-delay: 3s;
    2214     animation-delay: 3s;
    2215 }
    2216 
    2217 .animated.delay-4s {
    2218     -webkit-animation-delay: 4s;
    2219     animation-delay: 4s;
    2220 }
    2221 
    2222 .animated.delay-5s {
    2223     -webkit-animation-delay: 5s;
    2224     animation-delay: 5s;
    2225 }
    2226 
    2227 .animated.fast {
    2228     -webkit-animation-duration: 800ms;
    2229     animation-duration: 800ms;
    2230 }
    2231 
    2232 .animated.faster {
    2233     -webkit-animation-duration: 500ms;
    2234     animation-duration: 500ms;
    2235 }
    2236 
    2237 .animated.slow {
    2238     -webkit-animation-duration: 2s;
    2239     animation-duration: 2s;
    2240 }
    2241 
    2242 .animated.slower {
    2243     -webkit-animation-duration: 3s;
    2244     animation-duration: 3s;
    2245 }
    2246 
    2247 @media (prefers-reduced-motion) {
    2248     .animated {
    2249         -webkit-animation: unset !important;
    2250         animation: unset !important;
    2251         -webkit-transition: none !important;
    2252         transition: none !important;
    2253     }
    2254 }
  • 相关阅读:
    第一次作业-准备篇
    个人作业——软件工程实践总结
    团队作业第二次—项目选题报告
    软工实践第三次作业(结对第二次作业)
    软工实践第二次作业(结对第一次作业)
    第一次作业-准备篇
    软工实践|个人作业——软件工程实践总结作业
    软工实践|团队作业第二次—项目选题报告
    软工实践|结对第二次—文献摘要热词统计及进阶需求
    软工实践|结对第一次—原型设计(文献摘要热词统计)
  • 原文地址:https://www.cnblogs.com/yangguoe/p/9515542.html
Copyright © 2011-2022 走看看