CSS3 トランジションを使用してエフェクトを作成したいと考えています。div は、マウスオーバーで幅と背景色を変更する必要があります。その後、マウスアウトで 2 秒待ってから、通常の幅と背景色に戻ります。私がしたことは、hoverclass
マウスオーバーでjQueryを介してクラスを追加し、マウスアウトで削除することです。フィドルをチェックしてください。
これには2つの問題があります。まず、ブラウザによってフィドルの解釈が異なるということです。Chrome ではすべて正常に動作します。マウスオーバーすると、div の幅がすぐに変更され、マウスアウトで 2 秒待ってから通常のサイズに戻ります。ただし、Firefox では、新しく追加された hoverclass が新しい遷移ルールとして直接使用されます。何が起こるかというと、マウスオーバーでアニメーションが 2 秒後に開始されます。次に、マウスアウト時にクラスが削除され、Firefox が遷移ルールを取得する#test
ため、div は遅延なく通常のサイズに直接戻ります。
次に気付いたのは、背景色と幅の 2 つのプロパティをアニメーション化しようとすると、(ホバークラスのように) 幅のみに新しい遷移規則を使用すると、背景色の規則が上書きされることです。これは、ホバークラスで使用したすべてのトランジション プロパティを記述する必要があるということ#test
ですか?