ツール一覧 / AI活用ノート / GSAPの使い方入門|AIが書いたコードのタイミングを自分で直す

GSAPの使い方入門|AIが書いたコードのタイミングを自分で直す

2026-10-10Web制作読了 約9分

AIが書いたGSAPのコードを、to・from・timelineの3つで読めるようにします。速さ、重なり、時間差を変えるときに触る数字を早見表と図にまとめました。from()のちらつきの直し方と、2026年10月時点の商用ライセンスも載せています。

GSAPの使い方入門|AIが書いたコードのタイミングを自分で直す

結論: まず .to( と .from( のどちらかを見て、動く向きを確かめます。あとは触る数字を1つに絞れば、AIに頼み直さなくても直せます。

  • 速さを変えたい → duration(timelineなら1行目の defaults)
  • 重なりや間を変えたい → 行の最後にある "-=0.3" のような文字
  • from() で画面がちらつく → CSSの visibility: hidden + autoAlpha

「見出しの出方、もう少しゆっくりで」。クライアントのこの一言で、AIが書いたGSAPのコードを開いて固まる。ここ、迷いますよね。

AIに頼み直すと、毎回コード全体が書き換わります。触る場所さえ分かれば、数字を1つ直すだけです。GSAP公式ドキュメントをもとに、その場所をまとめました。

この記事の目次
  1. AIのGSAPコードは、まずどこを見ればいい?
  2. 速さ・重なり・時間差は、どの数字を変えればいい?
  3. AIが書いたtimelineを1行ずつ読むとどうなる?
  4. "-=0.3" や "<" は何? position引数を図で見る
  5. from() で画面がちらつく・要素が出てこないときの直し方
  6. TweenMaxやTimelineMaxが出てきたら書き換えるべき?
  7. AIに修正を頼むとき、一度で通る言い方は?
  8. 商用の案件でGSAPを使ってもいい?
  9. よくある質問
  10. この記事のまとめ

AIのGSAPコードは、まずどこを見ればいい?

gsap.to / gsap.from / gsap.timeline のどれが使われているかを見ます。これで動きの向きと順番が分かります。

to 今 指定した値 from 指定した値 今 timeline 順番に並べる入れ物
GSAPの公式トップページ
GSAPの公式トップページ(gsap.com・2026-10-10時点の画面)
書き方 何をするか よく使う場面
gsap.to() 今の状態から、指定した値へ動かす ホバー、クリック後の移動
gsap.from() 指定した値から、今の状態へ戻す ページを開いたときの登場
gsap.timeline() 複数の動きを順番にまとめる ヒーローの一連の演出

← 表は横にスクロールできます →

数字が書かれていなければ、duration(動く時間)は0.5秒、ease(動きの緩急)は "power1.out" です。AIのコードが「なんだか速い」なら、たいていこの初期値のまま動いています。

速さ・重なり・時間差は、どの数字を変えればいい?

長さや間隔の違う横棒と時計で表した、動きのタイミング

「何を変えたいか」から引けば、触る場所は1つに絞れます。

delay duration(長さ) 中のカーブ=ease stagger(ずらし)
やりたいこと 触る場所 例
1つの動きを速く・遅く duration 0.5 → 1.2
動き始めを遅らせる delay(単体)/position引数(timeline内) delay: 0.3
前の動きと重ねる position引数 "-=0.3" / "<" / "<0.2"
間をあける position引数 "+=0.5"
まとめてテンポを変える defaults / timeScale() defaults: { duration: 0.8 }
順番に出る間隔 stagger 0.1 → 0.2
動きの緩急 ease "power1.out" → "power3.out"

← 表は横にスクロールできます →

「position引数」は、.to() や .from() のカッコの最後に書く文字のことです。

7つのうち、覚える価値が一番高いのはposition引数だと考えています。timelineの演出が「何か変」なとき、原因はほとんどここにあるからです。

AIが書いたtimelineを1行ずつ読むとどうなる?

ヒーローの登場アニメを例に、数字ごとの意味をコメントで書き込みました。

// 1行目: ここに書いた duration と ease が、下の3つ全部に効く
const tl = gsap.timeline({ defaults: { duration: 0.8, ease: "power2.out" } });

tl.from(".hero-title", { y: 40, opacity: 0 })          // 40px下から、透明な状態で出てくる
  .from(".hero-text",  { y: 20, opacity: 0 }, "-=0.3") // 見出しが終わる0.3秒前に始まる
  .from(".hero-card",  { y: 30, opacity: 0, stagger: 0.15 }, "<0.2");
  // ↑ 本文が始まった0.2秒後にカードが動き出す。カードは1枚ごとに0.15秒ずつずれる
直したいこと 触る場所
全体をゆっくりにしたい 1行目の duration: 0.8 を 1.0 にする
見出しと本文をもっと重ねたい "-=0.3" を "-=0.5" にする
カードが出る間隔を詰めたい stagger: 0.15 を 0.08 にする
全部まとめて半分の速さで確認したい 最後に tl.timeScale(0.5) を足す

← 表は横にスクロールできます →

defaults より、各行に個別に書いた値が優先されます。見出しだけ速くしたいなら、その行に duration: 0.5 を足せば済みます。

地味に見落としがちですが、AIのコードを開いたら最初に defaults を探してください。「各行に数字が無いのに遅い」という謎は、たいていここで解けます。

"-=0.3" や "<" は何? position引数を図で見る

省略すると前の動きの後ろにつながります。+= で間があき、-= で重なり、< で同時に始まります。

0 1 2 3秒 A 省略 "+=0.5" "-=0.3" "<"
書き方 意味
省略("+=0" と同じ) 前の動きの終わりにつなぐ
"+=0.5" 終わってから0.5秒あける
"-=0.3" 終わる0.3秒前から重ねる
"<" 直前の動きと同時に始める
">" 直前の動きが終わったときに始める
"<0.2" 直前の動きが始まってから0.2秒後に始める
2 タイムラインの開始から2秒の位置に置く

← 表は横にスクロールできます →

読み違えやすいのが "<3" です。「3秒前」ではなく、直前の動きが始まってから3秒後を指します。

"-=25%" のような割合での指定もあります。こちらはGSAP 3.7.0以降で使えます。

from() で画面がちらつく・要素が出てこないときの直し方

ちらつく緑のカードをスライダーで直す、机の前の人

ちらつくならCSSで先に隠す。連打で崩れるならfromTo()に書き換える。この2つで足ります。

from()が おかしい 開いた瞬間ちらつく 連打で消える visibility: hidden + autoAlpha fromTo() に変える

「登場アニメ」と頼むと、AIはfrom() で書いてくることが多いはずです。クリックで何度も動かす部品なら、最初から「fromToで書いて」と頼むほうが手戻りは少ないと考えています。

TweenMaxやTimelineMaxが出てきたら書き換えるべき?

古い書き方でもまだ動きます。ただ、GSAP 3の書き方にそろえると読みやすくなります。

古い書き方(v2) 今の書き方(v3)
TweenMax.to(".a", 2, { x: 100 }) gsap.to(".a", { duration: 2, x: 100 })
new TimelineMax() gsap.timeline()(new は要らない)
Power2.easeOut "power2.out"("power2" だけでも同じ意味)

← 表は横にスクロールできます →

公式の移行ガイドにも「The old syntax still works(古い書き方もまだ動く)」とあります。

とはいえ、秒数が2番目に来る書き方だと duration の場所が一目で分かりません。見つけたら書き換えておくほうが、あとで自分が助かります。

緩急を目で見て選びたいなら、公式のEase Visualizerが便利です。カーブをグラフ・時計・箱の3つの見え方で確かめられます。

GSAP公式のEaseページ(Ease Visualizer)
GSAP公式のEaseページ(Ease Visualizer)(gsap.com・2026-10-10時点の画面)

AIに修正を頼むとき、一度で通る言い方は?

ノートPCの人と丸いロボットが吹き出しで指示をやりとりする様子

「もっといい感じに」ではなく、どこをどう変えるかを用語つきで書きます。

コツは最後に「ほかは変えないで」と付けること。これが無いと、AIが関係ない行まで書き直すことがあります。

商用の案件でGSAPを使ってもいい?

2026年10月10日時点では、商用の案件でも無料です。以前は有料だったプラグインも含まれます。

0円 商用もOK AIでコード生成 競合ノーコードツール開発
項目 内容(2026-10-10時点)
ライセンス Standard License(2025年4月30日発効)
料金 プラグインを含めて無料。Webflowを使っているかどうかは関係なし
できないこと Webflowのアニメーション機能と競合する、ノーコードのアニメーション作成ツールの開発(書面での同意がない場合)
AIでのコード生成 公式FAQで、ChatGPTやCursorなどでの生成は禁止に当たらないとされている

← 表は横にスクロールできます →

数年前の解説には「条件によってはBusiness Licenseが必要」とあるものも残っています。これは無料化より前の情報です。

ライセンスは改定されることがあります。納品前に公式のStandard Licenseを一度見ておくと安心です。

よくある質問

Q. 試すだけなら、どうやって読み込めばいい?

scriptタグを1行書けば動きます。npmなら npm install gsap です。

<script src="https://cdn.jsdelivr.net/npm/gsap@3.15.0/dist/gsap.min.js"></script>

2026年10月10日時点の最新は3.15.0です。最新版は公式のInstallationページでご確認ください。ScrollTriggerなどのプラグインは、gsap.registerPlugin() で登録してから使います。

Q. 全体を少しだけゆっくりにしたい。全部の行を直すしかない?

その必要はありません。timelineの defaults の duration を変えるか、tl.timeScale(0.8) のように全体の速さを変えます。timeScaleは1が通常の速さで、小さいほどゆっくりになります。

Q. 動きが苦手な人への配慮はどう書く?

gsap.matchMedia() に (prefers-reduced-motion: reduce) を登録します。OSで「視差効果を減らす」をオンにしている人には、動きを止めたり短くしたりできます。条件に合わなくなると、中のアニメーションは自動で元に戻ります。

この記事のまとめ

次にAIのコードを開いたら、"-=0.3" を "-=0.5" に変えて再読み込みしてみてください。重なり方の変化を一度見ておくと、AIへの頼み方も具体的になります。

この記事は、Webサイトの動く部品集 AETHER Motion の制作チームが書いています。

出典

  1. gsap.to()GSAP / 2026-10-10参照
  2. gsap.from()GSAP / 2026-10-10参照
  3. TimelineGSAP / 2026-10-10参照
  4. Understanding the Position ParameterGSAP / 2026-10-10参照
  5. Getting Started with GSAPGSAP / 2026-10-10参照
  6. StaggersGSAP / 2026-10-10参照
  7. EasesGSAP / 2026-10-10参照
  8. Most Common GSAP MistakesGSAP / 2026-10-10参照
  9. FOUCGSAP / 2026-10-10参照
  10. GSAP 3 Migration GuideGSAP / 2026-10-10参照
  11. InstallationGSAP / 2026-10-10参照
  12. Standard LicenseWebflow / 2026-10-10参照
  13. PricingGSAP / 2026-10-10参照
  14. GSAP入門(第2回) - タイムラインICS MEDIA / 2026-10-10参照