過渡最大高度動畫我打得四處CSS-transitions
並遇到了一些奇怪的事情來了,從價值(例如14px
)以none
增加對max-height
的過渡。與價值沒有
根本沒有動畫,隱藏的元素立即出現和消失。
我可以看到一個問題,因爲none
沒有高度,所以很難將差異計算爲動畫。將none
更改爲實際值(例如120px
)按預期工作。
有沒有辦法讓這個例子工作,而不改變HTML結構?
$("div").click(function(){
$(this).toggleClass("unfold");
})
div {
max-height: 14px;
overflow: hidden;
cursor: pointer;
-moz-transition: 1s;
-ms-transition: 1s;
-o-transition: 1s;
-webkit-transition: 1s;
transition: 1s;
}
div.unfold {
max-height:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div>
First-line<br />
Second<br />
Third<br />
Fourth<br />
More<br />More<br />More<br />More<br />More<br />More<br />More<br />More<br />
</div>
目前仍沒有動畫。隱藏的部分只是出現或消失。 – ppasler
我認爲問題是因爲你正在試圖給動畫溢出屬性,它不能動畫只是試圖讓顯示無和高度動畫更新答案給我幾分鐘。 http://stackoverflow.com/questions/27904886/can-i-apply-a-css-transition-to-the-overflow-property –
溢出屬性不能動畫,所以你需要動畫高度並顯示兩者有點複雜的屬性,jQuery給出方便的方法來使用高度slideDown動畫檢查更新的答案。 –