選択フォームコントロールを置き換えるアコーディオンメニューを作成しました。css3トランジションを使用してスムーズに展開/縮小したいと思います。
jsfiddleへのリンクは次のとおりです:http://jsfiddle.net/hKsCD/4/
目的の効果を得るには、各リンクの高さをアニメーション化する必要がありますが、その方法がわかりません。CSS3の移行は混乱を招きます。O_o
選択フォームコントロールを置き換えるアコーディオンメニューを作成しました。css3トランジションを使用してスムーズに展開/縮小したいと思います。
jsfiddleへのリンクは次のとおりです:http://jsfiddle.net/hKsCD/4/
目的の効果を得るには、各リンクの高さをアニメーション化する必要がありますが、その方法がわかりません。CSS3の移行は混乱を招きます。O_o
.accordion {
height: 20px; /*define height to start from*/
transition: height 2s;
-moz-transition: height 2s; /* Firefox 4 */
-webkit-transition: height 2s; /* Safari and Chrome */
-o-transition: height 2s; /* Opera */
}
.accordion.expanded {
height: 400px;/*desired height when expanded*/
}
ただし、高さが要素ごとに異なる場合は、「height:auto」が機能しないため、これらの場合は最大幅の回避策を使用する必要があります。
height
たとえば、上記の例で、要素が到達しないものにmax-height
設定された展開状態に置き換えmax-height
ます(ただし、アニメーションの速度は、アニメーション化される高さに対して計算されるため、高すぎません->最大幅が高すぎます(例:9999px)は、気付かないほど高速なアニメーションになります)