現状スクロールしたらふわっと表示させるアニメーションがあり、
その中で横並びにしている要素は、transition-durationで0.2sずつ
ずれて出るようにしています。
最初はopacity:0で、スクロールのタイミングでopacity:1になるクラスをつけることで
ふわっとフェードインさせる動きをさせています。
その影響か、hoverにかけてるopacityにもフェードインのdurationがかかってしまい
遅くopacityがかかるようになってしまいました。
hoverのアニメーションは遅くしたくないのですが、改善方法を教えていただきたいです。
初歩的な質問ですが、よろしくお願いいたします。
HTML
1<ul class="sample-list fadeIn"> 2 <li></li> 3 <li></li> 4 <li></li> 5 <li></li> 6 <li></li> 7</ul>
CSS
1.sample-list { 2 display: flex; 3 justify-content: center; 4} 5 6.sample-list { 7 transition; hover 0.3s 8} 9 10.sample-list:hover { 11 opacity: 0.5; 12} 13 14.sample-list:nth-child(1){ 15transition-duration: opacity 0.2s 16} 17/* 割愛 li要素を0.2sずつ遅くした記述をしてます。 */ 18 19 20/* フェードインアニメーション */ 21.fadeIn { 22 opacity: 0; 23 transform: translateY(-30px); 24} 25 26.fadeIn.js-fadein { /* Jsでスクロールでクラスがつくようにしています。 */ 27 opacity: 1; 28 transform: translateY(0); 29 transition: opacity 0.5s, transform 0.5s;
だれでも動作確認できるように、
CSSを省略せずに、JSのコードも追記してください。
そもそも下記のコードは構文エラーだし。
transition; hover 0.3s