2017-07-03 8 views
0

CSSのキーフレームを使用して、要素のボトム位置と不透明度を同時にアニメーション化したいと考えています。複数のプロパティのCSSアニメーション

要素の不透明度はアニメーション化されていますが、下位の位置はアニメーション化されていません。

.custom-fade-down{ 
-webkit-animation: 23s ease 0s normal forwards 1 custom-down; 
-moz-animation: 23s ease 0s normal forwards 1 custom-down; 
    animation: 23s ease 0s normal forwards 1 custom-down; 
} 

@keyframes custom-down { 
    from { 
     opacity: 0; 
     bottom: 10px; 
    } 

    to { 
     opacity: 1; 
     bottom: 1px; 
    } 
} 
+0

あなたのソリューションは、近くにあります。 'position:relative;'を '.custom-fade-down'クラスに追加することは、このトリックを行うべきです。 –

答えて

1

解決策は近いです。 position: relative;.custom-fade-downクラスに追加して、bottomプロペラが有効になるようにします。

$('div').addClass('custom-fade-down');
.custom-fade-down { 
 
    width: 100px; 
 
    height: 100px; 
 
    bottom: -100px; 
 
    background-color: black; 
 
    -webkit-animation: 23s ease 0s normal forwards 1 custom-down; 
 
    -moz-animation: 23s ease 0s normal forwards 1 custom-down; 
 
    animation: 23s ease 0s normal forwards 1 custom-down; 
 
} 
 

 
@keyframes custom-down { 
 
    from { 
 
    opacity: 0; 
 
    bottom: -100px; 
 
    } 
 
    to { 
 
    opacity: 1; 
 
    bottom: 0px; 
 
    } 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div style="position: relative;"></div>

+0

すでに相対位置を持つ要素にjQueryを使用してこのクラスを動的に追加しています。私は要素から相対位置を削除し、代わりにクラスに配置する必要がありますか? – user3574939

+0

いずれの方法も有効です。上記の例を更新して、ロード時にクラスを追加しました。そして、 'position:relative;'をクラス自体に追加する方がよりクリーンであることに同意するでしょう。 –

関連する問題