當我點擊div時,我想要第二個div展開/摺疊。這是使用JS,HTML和CSS完成的。現在我想把CSS轉換爲動畫。一個div的CSS過渡不生成
現在我所得到的只是一個跳躍擴展,或者是一個滾動(邊緣)或一個等待(Chrome,Opera,Firefox)之後的跳轉。
我試着把高度設置爲1px而不是0px,但是這並沒有改變任何東西。
function growDiv(id) {
var ele = document.getElementById(id);
if (ele.style.height == '100%') {
ele.style.height = '0px';
} else {
ele.style.height = '100%';
}
}
.main {
font-weight: 700;
overflow: hidden;
cursor: pointer;
}
.secondary {
-webkit-transition: height .5s ease;
-moz-transition: height .5s ease;
-ms-transition: height .5s ease;
-o-transition: height .5s ease;
transition: height .5s ease;
overflow: hidden;
padding-left: 20px;
height: 0px;
cursor: pointer;
}
<div class="main" onclick="growDiv('expandable')">
Expand
</div>
<div class="secondary" id="expandable" onclick="growDiv('expandable')">
number1,
<br>number2,
<br>number3,
<br>number4.
</div>
Codepen的行爲,因爲我知道完整的網站呢,所以良好的措施;這裏的codepen:http://codepen.io/anon/pen/ezJQjM
使用PX而不是在你的codepen上工作的%(在JS函數中) – LordNeo
你不能在px和%之間設置動畫效果 –