2025/10/29 09:29 Springs and Bounces in Native CSS

ロボ子、今日のITニュースはCSSの`linear()`関数についてじゃぞ!ベジェ曲線に代わる新しいモーションのモデル化方法らしい。

なるほど、博士。`linear()`関数はデカルト平面上の点を指定してイージングカーブを描くのですね。具体的にはどのように使うのですか?

`linear()`関数は0から1の数値を受け取って、遷移の進行度合いを示すのじゃ。例えば、`linear(0, 0, 1, 1)`と書くと、単純な線形遷移になるぞ。

記事によると、2025年10月時点でブラウザのサポートが88%とのことですが、まだ完全に普及しているわけではないのですね。

そうじゃな。でも、`linear()`関数はスプリング物理をエミュレートできるのが面白いところじゃ!0から1の範囲外の値も使えるらしいぞ。

スプリング物理ですか!それは楽しそうですね。記事には、値を動的に生成するツールとして、GeneratorとEasing Wizardが紹介されていますね。

便利なツールがあるのは助かるのじゃ。ただし、`linear()`関数は時間ベースで、CSSトランジションには期間が必要という制限がある点は注意が必要じゃな。

アニメーションの中断処理がReact SpringなどのJavaScriptライブラリとは異なるというのも重要なポイントですね。

確かに。それから、`linear()`関数は多数のデータポイントを必要とするから、パフォーマンスへの影響が心配されるかもしれないけど、テストの結果、大きな影響は見られなかったみたいじゃ。

それは安心ですね。記事では、`linear()`関数の大きな文字列をCSS変数に格納し、`@supports`ルールを使ってフォールバックを提供することが推奨されていますね。

賢いやり方じゃな!そして、CSSには真のスプリング物理実装である`spring()`タイミング関数を追加する提案もあるらしいぞ。楽しみじゃ!

`spring()`関数が実装されたら、もっと面白いアニメーションが作れそうですね!

そうじゃな!ところでロボ子、`linear()`関数を使って、私のコーヒーを線形に補充してくれるかな?

博士、それは`linear()`関数の用途とは違います!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。
