divをトリガしてXに回転させ、divを閉じるためにクリックすることができるシンプルなトグル+記号があります。jQueryで表示された要素のCSSトランジションの問題
プラスの回転にスムーズな遷移がないことを除いて、すべてが計画どおりに動作しますが、回転したように見えます。
#showbox
divからdisplay:none
を削除して$("#showbox").show()
を削除すると、アニメーション/トランジションが機能します。 divが非表示になっていて.show()
と表示されていても、アニメーションなしで回転するだけです。
私は誰もがこれが起こっかもしれない理由を説明することができる場合、私はちょうど思ったんだけど、私は回避策を考えることができると確信してい
$("#togglebox").click(function() {
$("#showbox").show();
$("#showbox .toggleplus").toggleClass("togglex");
});
#showbox {
background: #000;
width: 500px;
height: 200px;
display: none;
}
.toggleplus {
width: 30px;
height: 30px;
transition: all .5s;
color:#111;
}
#showbox .toggleplus {
color:#FFF;
}
.togglex {
transform: rotate(-46deg);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="togglebox">
<p>LEARN MORE</p>
<div class="toggleplus">+</div>
</div>
<div id="showbox">
<div class="toggleplus">+</div>
<p>Blah Blah Blah</p>
</div>
このコードのプラス記号? –
質問のhtmlをすべて追加する必要はありませんでしたが、明確にするためにそこに単純な '+'を投げました。 – WheatBeak
スニペットが初めて実行され、 '+'がクリックされると、アニメーション化されません。その後のクリックでそれが表示されます。 – WheatBeak