設定された時間が経過するとスライドインするdivのCSSアニメーションがあります。私が欲しいのは、いくつかのdivが、スライドインするアニメーションdivのスペースを埋め、それらの要素をページの下にプッシュすることです。
これを最初に試みると、スライドインするdivは、表示されていない場合でもスペースを占有します。divをdivに変更してもdisplay:none
、まったくスライドしません。
入ってきた時間になるまでdivがスペースを占有しないようにするにはどうすればよいですか(タイミングにCSSを使用します)。
アニメーションにはAnimate.cssを使用しています。
コードは次のようになります。
<div id="main-div" class="animated fadeInDownBig"><!-- Content --></div>
<div id="div1"><!-- Content --></div>
<div id="div2"><!-- Content --></div>
<div id="div3"><!-- Content --></div>
コードが示すように、メインのdivを非表示にし、他のdivを最初に表示したいと思います。次に、次の遅延を設定します。
#main-div{
-moz-animation-delay: 3.5s;
-webkit-animation-delay: 3.5s;
-o-animation-delay: 3.5s;
animation-delay: 3.5s;
}
その時点で、メインのdivに他のdivが入ってくるときに押し下げてもらいたいと思います。
どうすればよいですか?
注:これを行うためにjQueryを使用することを検討しましたが、CSSがよりスムーズで、タイミングが少し適切に制御されるため、厳密にCSSを使用することをお勧めします。
編集
Duopixelが提案したことを試みましたが、誤解してこれを正しく行っていないか、機能しません。コードは次のとおりです。
HTML
<div id="main-div" class="animated fadeInDownBig"><!-- Content --></div>
CSS
#main-image{
height: 0;
overflow: hidden;
-moz-animation-delay: 3.5s;
-webkit-animation-delay: 3.5s;
-o-animation-delay: 3.5s;
animation-delay: 3.5s;
}
#main-image.fadeInDownBig{
height: 375px;
}