CSS辞書
アニメーション実装集に戻る

DOM追加時のフェードイン(@starting-style)

出現・入場

JavaScriptなしで「要素が追加された瞬間」にアニメーションする最新手法。トースト通知や動的リストの定番になりつつあります。

プレビュー

Live

プレビュー枠は右下をドラッグすると高さを変えられます

コードを編集して試す

書き換えるとプレビューに即反映されます。変更はこのページ内だけで、リロードすると元に戻ります。

HTML
CSS

仕組みの解説

@starting-styleは「要素が最初にレンダリングされる瞬間のスタイル」を定義するアットルールです。通常のtransitionは状態変化がないと動きませんが、これによりDOM追加直後(=初回描画)を起点にした遷移が可能になります。従来はJSでクラスを1フレーム後に付け替えるハックが必要だった処理が、CSSだけで完結します。

実装のポイント

display: noneからの表示に使う場合はtransition-behavior: allow-discreteの併用が必要です。詳細は@starting-styleのページを参照してください。

💬 AIへの頼み方

JSで追加した要素が、DOMに挿入された瞬間にフェードインするようにして。@starting-styleとtransitionで実装して、JSでクラス付け替えはしないで。

@starting-styleが非対応のブラウザでも表示が壊れないように、フォールバックを考慮して。

そのままAIチャットに貼り付けて使える依頼文の例です。ページ上部の「AI用にコピー」でこのページ全体をコンテキストとして渡せます。

使っているプロパティ