css3中實作動畫的兩種方式分別是:1、分別利用transition屬性和transform屬性來設定過渡和形狀;2、利用動畫屬性animation設定動畫效果。
本文操作環境:windows10系統、css 3、thinkpad t480電腦。
1、利用transition設定過渡,加入transform設定形狀,形成動畫效果,如下:
.divadd { transition: All 0.4s ease-in-out; -webkit-transition: All 0.4s ease-in-out; -moz-transition: All 0.4s ease-in-out; -o-transition: All 0.4s ease-in-out; transform:rotate(360deg); -ms-transform:rotate(360deg); /* IE 9 */ -webkit-transform:rotate(360deg); /* Safari and Chrome */ }
不過此種方式比較小眾,不易控制。
2、新增animation屬性,設定動畫效果,如下:
.a1 { position: absolute; animation: a1 3s; opacity: 0 } @keyframes a1 { 0% {left: 10px;opacity: 0} 30% {left: 60px;background-color: pink;font-size:23px;opacity: 1} 90% {left: 100px;background-color: red;opacity: 1} 100% {left: 10px;opacity: 0} }
以上百分比後的方括號內可以新增各種屬性值,例如transform ratote、left。 。 。 。 。 。添加left top等定位不要忘記設定position absolute。
(學習影片分享:css影片教學)
所有屬性有:
animation-name: myfirst; //动画名称,用于animation引用 animation-duration: 5s; //动画时长, animation-timing-function: linear; animation-delay: 2s; animation-iteration-count: infinite; animation-direction: alternate; animation-play-state: running;
animation-fill-mode設定動畫結束後的狀態
none:預設值。不設定物件動畫以外的狀態,DOM未進行動畫前狀態
forwards:設定物件狀態為動畫結束時的狀態,100%或to時,當設定animation-direcdtion為reverse時動畫結束後顯示為keyframes第一幀
backwards:設定物件狀態為動畫開始時的狀態,(測試顯示DOM未進行動畫前狀態)
both:設定物件狀態為動畫結束或開始的狀態,結束時狀態優先
相關推薦:CSS教學
以上是css3中實作動畫有哪兩種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!