0
我正在設計一個垂直下拉菜單頭,當點擊時打開和關閉(使用輸入檢查類型),我無法得到這個開幕動畫,因爲關閉動畫只是一個縮放技巧,而不是與開場動畫一樣。如何反轉此CSS3垂直下拉動畫?
這是我的項目:https://codepen.io/anon/pen/xLmbXd?editors=1100
我想這個比例收盤動畫更改爲實際動畫:
@keyframes hideAnimation {
0% {
-moz-transform: scaleY(0.5);
-ms-transform: scaleY(0.5);
-webkit-transform: scaleY(0.5);
transform: scaleY(0.5);
}
60% {
-moz-transform: scaleY(0.25);
-ms-transform: scaleY(0.25);
-webkit-transform: scaleY(0.25);
transform: scaleY(0.25);
}
80% {
-moz-transform: scaleY(0);
-ms-transform: scaleY(0);
-webkit-transform: scaleY(0);
transform: scaleY(0);
}
100% {
-moz-transform: scaleY(0);
-ms-transform: scaleY(0);
-webkit-transform: scaleY(0);
transform: scaleY(0);
}
}
所有幫助表示讚賞!
也許你應該看看只用高度或最大高度爲你的過渡。通過使用「overflow:hidden」,它可以有效地覆蓋和隱藏子元素。通過將'transition'設置爲'checked'狀態,它將使用該轉換,當'取消'或關閉時,它將使用未檢查的轉換。我所做的只是給'transform:scale(0)'添加了一個延遲;''隱藏'之後就這麼做了。 – Chad
我明白了。當我將非縮放效果應用於關閉和打開下拉菜單時,下拉菜單的打開速度比打開時快嗎? https://codepen.io/anon/pen/xLmbXd?editors=0100 –
當它打開一個900px的「最大高度」時,它會有效地停在它的子節點的高度,因此遵循'transform:scale ()'。當你關閉它時,它會在2秒內從900px大小動畫到0px。那個動作很快。 – Chad