所以,我明白如何執行CSS3轉換和動畫。什麼是不明確的,我已經GOOGLE了,是什麼時候使用哪個。CSS:動畫與轉換
例如,如果我想使球彈跳,很明顯動畫是要走的路。我可以提供關鍵幀,瀏覽器會做中間幀,我會有一個很好的動畫。
但是,有時可以實現上述效果。一個簡單而常見的例子就是實現Facebook風格的滑動抽屜菜單:
這個效果可以通過轉換來實現,像這樣:
.sf-page {
-webkit-transition: -webkit-transform .2s ease-out;
}
.sf-page.out {
-webkit-transform: translateX(240px);
}
或者,通過動畫像這樣:
.sf-page {
-webkit-animation-duration: .4s;
-webkit-transition-timing-function: ease-out;
}
.sf-page.in {
-webkit-animation-name: sf-slidein;
-webkit-transform: translate3d(0, 0, 0);
}
.sf-page.out {
-webkit-animation-name: sf-slideout;
-webkit-transform: translateX(240px);
}
@-webkit-keyframes sf-slideout {
from { -webkit-transform: translate3d(0, 0, 0); }
to { -webkit-transform: translate3d(240px, 0, 0); }
}
@-webkit-keyframes sf-slidein {
from { -webkit-transform: translate3d(240px, 0, 0); }
to { -webkit-transform: translate3d(0, 0, 0); }
}
隨着HTML,看起來像這樣:
<div class="sf-container">
<div class="sf-page in" id="content-container">
<button type="button">Click Me</button>
</div>
<div class="sf-drawer">
</div>
</div>
而且,這種伴隨的jQuery腳本:
$("#content-container").click(function(){
$("#content-container").toggleClass("out");
// below is only required for css animation route
$("#content-container").toggleClass("in");
});
我想什麼,瞭解什麼是職業玩家這些方法的利弊。
- 一個明顯的區別是,動畫製作需要更多的代碼。
- 動畫給予更好的靈活性。我可以有不同的動畫滑出,並在
- 有什麼可以說的表現。兩者都利用h/w加速度嗎?
- 哪個更現代化,如何前進
- 還有什麼可以補充的嗎?除非您使用的是相同的過渡一遍又一遍,在這種情況下,動畫效果會更好
完美清晰的解釋 –
也看看這篇文章http://www.kirupa.com/html5/css3_animations_vs_transitions.htm,它正確地指出,轉換是做JavaScript的交互時要走的路。 –
清楚的解釋謝謝 – Student22