2016-08-30 10 views
1

今までの私のアニメーションは、それぞれの奇妙な要素を「パルス」し、偶数要素に切り替えます。奇妙なアニメーションではなく、どのようにアニメーションを「脈拍」にすることができますか?

シーケンス内の各要素が1つずつ順番にパルスするという効果を得たいと思います。ここで

は、私がこれまで持っているものです:

.pulse-through { 
    span { 
     display: inline-block; 
     @include animation('pulse 0.4s alternate infinite ease-in-out'); 

     &:nth-child(odd) { 
      animation-delay: 0.4s; 
     } 
    } 
} 

/* KEYFRAME ANIMATIONS */ 
@include keyframes(pulse) { 
    to { 
     @include transform(scale(0.8)); 
     opacity: 0.5; 
    } 
} 

私は通常のCSSの変換やアニメーションですが、各ブラウザのために、それを簡単にするために含まれています。

答えて

3

することは、このような何か試してみてください:より効率的な方法があるに違いありません

.pulse-through { 
    span { 
     display: inline-block; 
     @include animation('pulse 0.4s alternate infinite ease-in-out'); 

     @for $i from 1 through 20 { 
      // limit the amount by some count, or try another way 
      // if that doesn't work 
      &:nth-child(#{$i}) { 
       animation-delay: ($i * 0.2s); 
      } 
     } 
    } 
} 
+0

を、私はそのことについて考えたが、20の要素未満/ mroeは何がありますか?プラスコードは動作しません、n番目の子の式は$ iを取ることができません – madcrazydrumma

+0

申し訳ありませんが、セレクターの補間を忘れてしまいました。更新されました。今すぐ動作します。そして、あなたはそれにいくつかのJSを組み込むと、それは簡単になります - しかし、CSS/SASSのみ...私が知っている良い方法。あなたは任意の数に20を増やすことができますが、それらがすべて画面に表示されるわけではないことを覚えておいてください。正しい番号を探したいかもしれません – casraf

関連する問題