あなたはあなたにこのようなdiv
をclassName
を追加するにはJavaScriptを使用して試みることができる:
function grow() {
var element = document.getElementById("boxid");
if (!element.className) {
element.className = 'tall';
} else {
element.className = '';
}
};
私はアニメーションのトグルを可能にするためにclassName
の無効化を追加しました。
次に、CSSの処理はあなたのための変換の全てをやらせる:
#boxid {
background-color: red;
width: 50px;
height: 50px;
position: relative;
-webkit-transition: height 0.3s ease;
transition: height 0.3s ease;
}
#boxid.tall {
height: 500px;
-webkit-transition: height 0.3s ease;
transition: height 0.3s ease;
transform: translate3d(100) /* this property ensures GPU processing cross-browser */
}
Codepenの例はhereです。
滑らかなCSSトランジションの素晴らしい記事はhereです。
translate3d
のクロスブラウザ使用に関するいくつかの問題は、hereと記載されています。
Choppinessは私と同じように見える、ブラウザとブラウザ。すべての変換をCSSに移動してみてください。 – jacefarm