iT邦幫忙

0

css animate的@keyframes 可以改變dislplay屬性否?

  • 分享至 

  • xImage

末學有兩個提問,百思不得其解法,還請高手幫忙,謝謝

範例:https://jsfiddle.net/uL3fktrh/

提問1. 把css中#a的display:none啟用後,animate就失效了

提問2. 想在每次移進.bt時候重啟animate,於是寫下方語法移除再重加載但卻不再animate

$(".bt").mouseenter(function() {
  $("#a").removeClass("cd-fade-in");
  $("#a").addClass("cd-fade-in");
});
froce iT邦大師 1 級 ‧ 2023-07-17 09:37:55 檢舉
1. 你對#a都直接不顯示了,怎麼會啟動動畫?

2. https://css-tricks.com/restart-css-animation/
請參照第二個方法。把 element.offsetWidth 清掉。
以你的code,在removeClass那行下面加一行
void $("#a")[0].offsetWidth
就好。
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0
pblaten
iT邦新手 2 級 ‧ 2023-07-19 09:48:08

可以參考看看

  1. 透過高度設定或是visibility的屬性,設定動畫效果。display:none會讓元素在DOM裡面直接隱藏,所以動畫會失效。
  2. mouseenter時刪除又新增cd-fade-in,但他是動畫效果,實際上你打開瀏覽器的檢查(F12),是可以看到cd-fade-in快速刪除又新增。

我要發表回答

立即登入回答