ホームページ >ウェブフロントエンド >CSSチュートリアル >CSSカスタムプロパティを搭載した視差

CSSカスタムプロパティを搭載した視差

William Shakespeare
William Shakespeareオリジナル
2025-03-17 09:49:12772ブラウズ

この記事では、CSSカスタムプロパティを使用して魅惑的な視差効果を作成し、静的画像を動的でインタラクティブなシーンに変換する方法について詳しく説明します。 Kent C. Doddsの新しいWebサイトは、動きを要求する中心的なイメージを特徴とするインスピレーションを提供しました。このソリューションは、視差効果を制御するために、2つのCSSカスタムプロパティ( --ratio-xおよび--ratio-yのみを活用します。

CSSカスタムプロパティを搭載した視差

コアJavaScriptコードはカーソル位置をキャプチャし、使用可能な範囲にマッピングします。 GSAPのmapRange()およびclamp()関数はこのプロセスを簡素化し、値を-1および1以内に保証します。 generateHandler関数は、再利用可能なイベントリスナーを作成し、特定の要素に比べてカーソル位置をマッピングします。これらのマップされた値は、CSSカスタムプロパティとして設定されます。

魔法はCSSにあります。 calc()カスタムプロパティを他の値と組み合わせて、スケールや色相などのさまざまな側面を制御します。この例は--ratio-x --ratio-yとHueに基づいてスケールを変更することを示しています。柔軟性により、コアJavaScriptを変更せずにクリエイティブコントロールが可能になります。

シーンの作成には、画像を個々の要素に分解することが含まれます。これは、CSSアートトレースに似たテクニックです。コンテナ内の子供として表されるこれらの要素は、スコープされたカスタムプロパティを使用してスタイルとなっています。各要素は、グローバル--ratio-xおよび--ratio-y値と相互作用する独自の動きと回転パラメーターを定義します。画像スプライトは、複数の画像要求を回避することにより、パフォーマンスを最適化します。

この記事は、プロセスを段階的に示すいくつかのデモを介して進行します。構成オブジェクトの使用を強調して、要素の位置、サイズ、および変換を定義します。応答性のある設計は、ポジショニングとサイジングにパーセンテージ値を使用して達成されます。 --allow-motionの追加は、モーションの減少を好むユーザーに対応し、すべての人によりスムーズな体験を提供します。

最後に、この記事では、この手法が反応コンポーネント構造内でどのように実装されているかを示しています。これは、効率的なコードの再利用と保守性のためにカスタムフック( useParallax )を利用しています。 Reactの実装により、視差ロジックがカプセル化され、大規模なプロジェクトに簡単に統合されます。その結果、CSSと少量のJavaScriptによって完全に駆動される、洗練されたパフォーマンスの視差効果が得られます。この記事は、画像スプライトの汎用性と、魅力的なWebエクスペリエンスの作成におけるCSSカスタムプロパティのパワーを強調することで締めくくります。

以上がCSSカスタムプロパティを搭載した視差の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。