首頁 >web前端 >css教學 >CSS3怎麼做蝴蝶飛舞的動畫

CSS3怎麼做蝴蝶飛舞的動畫

php中世界最好的语言
php中世界最好的语言原創
2017-11-24 15:13:203515瀏覽

CSS3怎麼製作蝴蝶飛舞的動畫?蝴蝶飛舞的動畫效果是什麼樣的呢? CSS3製作蝴蝶飛舞的動畫需要注意哪些方面?今天就給大家用CSS3做一個蝴蝶飛舞的動畫。

<!DOCTYPE html>
<html >
<head>
  <meta charset="UTF-8">
<title>CSS3制作蝴蝶飞舞动画</title>
<meta name="keywords" content=" CSS3制作蝴蝶飞舞动画" />
<meta name="description" content=" CSS3制作蝴蝶飞舞动画" />
      <style>   
      body{
  background-color: lightblue;
}
#container {
perspective: 600px;
perspective-origin: -20% 20%;
width: 850px;
height: 566px;
left: 300px;
top: 0px;
color: gray;
margin: 0px auto;
}
#butterfly {
transform: rotateZ(-30deg) rotate3d(0, 1, 0, 0deg) scale3d(0.5, 0.5, 0.5);
transform-origin: 51% 50%;
left: 0px;
top: 0px;
width: 400px;
height: 238px;
transform-style: preserve-3d;
/*Fly in a loop below*/
/*animation-name: butterflyani;
animation-duration: 5s;
animation-iteration-count: infinite;
animation-timing-function: linear;*/
}
.wing {
transform: rotateX(30deg)  translate3d(-200px, 0px, 0px) rotate3d(0, 1, 0, 160deg);
transform-origin: top right;
position: absolute;
left: 200px;
top: 0px;
width: 200px;
height: 238px;
background: url(butterfly.png) no-repeat;
animation-name: rightwingani;
animation-duration: 0.6s;
animation-delay: 2s;
animation-iteration-count: 4;
animation-timing-function: ease-out;
}
#butterfly .left{
transform: rotateX(30deg) rotate3d(0, 1, 0, 0deg);
animation-name: leftwingani;
left: 0px;
top: 0px;
}
@keyframes rightwingani {
         from {
                   transform:rotateX(30deg) translate3d(-200px, 0px, 0px) rotate3d(0, 1, 0, 160deg);
         }
         50% {
                   transform:rotateX(30deg) translate3d(-200px, 0px, 0px) rotate3d(0, 1, 0, 100deg);
         }
         to{
                   transform:rotateX(30deg) translate3d(-200px, 0px, 0px) rotate3d(0, 1, 0, 160deg);
         }
}
 
@keyframes leftwingani {
         from {
                   transform:rotateX(30deg) rotate3d(0, 1, 0, 0deg);
         }
         50% {
                   transform:rotateX(30deg) rotate3d(0, 1, 0, 80deg);
         }
         to{
                   transform:rotateX(30deg) rotate3d(0, 1, 0, 00deg);
         }
}
a {
  font-size: 5.5em;
  font-family: Arial;
  text-decoration: none;
  text-align: right;
  color: teal;
  letter-spacing: -2px;
  position: relative;
  top: -70%;
  left: -9%;
  width: 67%;
  display: block;
  line-height: 1.1em;
}
    </style>
</head>
<body>
  <div id="container">
  <div id="butterfly">
    <div class="left wing"></div>
    <div class="right wing"></div>
  </div>
</div>
    <script src="js/index.js"></script>
</body>
</html>

蝴蝶飛舞的動畫就是這麼做的,更多精彩請關注php中文網其它相關文章!

相關閱讀:

CSS3有哪些新增的背景屬性

怎麼用CSS3媒體查詢

css3的彈性盒怎麼做來

以上是CSS3怎麼做蝴蝶飛舞的動畫的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn