Illustratorで作成したパスをsvgで書き出し、CSSでアニメーションを付けました。
パスの書き順通りに再生されると聞いていたのですが、一部パスだけ途中からアニメーションが始まってしまいます。
再生は赤いラインを入れた部分から始まってしまいます。
左から何度も書き直してみましたが直りませんでした。
svg
1<svg class="sgwid" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" width="1366px" 2 height="630.063px" viewBox="0 0 1366 630.063" enable-background="new 0 0 1366 630.063" xml:space="preserve"> 3 4 <path class="st0 path" fill="none" stroke="#85B1DF" stroke-width="2" stroke-miterlimit="10" d="M-27,215.825c0,0,165.392,193.585,340,276 5 c500,236,870.225,108.336,922-107c44-183-94.979-397.462-342-341c-280,64-284,424-70,528c162.503,78.974,336.154,15.055,433.5-75.5 6 c129-120,180.5-320.5,180.5-320.5"/> 7 8 <path class="st0 path" fill="none" stroke="#85B1DF" stroke-width="2" stroke-miterlimit="10" d="M-22-4.175c0,0,247.466,576.368,915,621 9 c344,23,524-245,524-245"/> 10 11 <image class="grap" overflow="visible" width="773" height="773" xlink:href="image/home/maruphoto01.png" transform="matrix(0.7088 0 0 0.7088 682.3213 41.3877)"> 12 </image> 13 14 <path class="circle" fill="#D7092F" d="M1022.75,149.733c0,77.551,62.867,140.418,140.418,140.418s140.418-62.867,140.418-140.418 15 c0-77.551-62.867-140.418-140.418-140.418S1022.75,72.182,1022.75,149.733"/> 16</svg> 17
css
1/* SVGアニメーション用CSS 共通 */ 2.path { 3 opacity: 0; 4} 5 6.animation-start .path { 7 opacity: 1; 8 stroke: #85B1DF; /* アウトライン色 */ 9 fill: none; /* 塗りの色 */ 10 stroke-width:1; /* 線の太さ */ 11 stroke-dasharray: 3000; 12 stroke-dashoffset:3000; 13 animation: DASH 3s ease-in alternate forwards; 14 -webkit-animation:DASH 3s ease-in 0s forwards; 15 -o-animation:DASH 3s ease-in 0s forwards; 16 animation:DASH 3s ease-in 0s forwards; 17} 18 19@keyframes DASH{ 20 0%{stroke-dashoffset:3000;} 21 100%{stroke-dashoffset:0;} 22} 23@-moz-keyframes DASH{ 24 0%{stroke-dashoffset:3000;} 25 100%{stroke-dashoffset:0;} 26} 27@-webkit-keyframes DASH{ 28 0%{stroke-dashoffset:3000;} 29 100%{stroke-dashoffset:0;} 30} 31@-o-keyframes DASH{ 32 0%{stroke-dashoffset:3000;} 33 100%{stroke-dashoffset:0;} 34} 35@-ms-keyframes DASH{ 36 0%{stroke-dashoffset:3000;} 37 100%{stroke-dashoffset:0;} 38} 39 40.grap { 41 opacity: 0; 42} 43.animation-start .grap { 44 animation: fadeIn 3s ease 2s 1 forwards; /* 長さ タイミング いつ始まるか 繰り返し数 保持*/ 45} 46 47.circle { 48 opacity: 0; 49} 50.animation-start .circle { 51 animation: fadeIn 2s ease 2.2s 1 forwards; /* 長さ タイミング いつ始まるか 繰り返し数 保持*/ 52} 53 54.animation-start .inner { 55 opacity: 0; 56} 57.animation-start .inner { 58 animation: fadeIn 2s ease 3s 1 forwards; /* 長さ タイミング いつ始まるか 繰り返し数 保持*/ 59} 60 61@keyframes fadeIn { 62 0% {opacity: 0} 63 100% {opacity: 0.9} 64} 65
.animation-start はinview.jsで、スクロールした際にアニメーションが再生されるようにつけているクラスです。
必要なコードがあればアップします。
どなたかお分かりになる方がいらっしゃればご教授ください。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。