亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目次
キーテイクアウト
このBasic @KeyFramesルールを検討してください:
ホームページ ウェブフロントエンド jsチュートリアル CSSを使用してフルページアニメーションを作成する方法

CSSを使用してフルページアニメーションを作成する方法

Feb 25, 2025 pm 05:26 PM

CSSを使用してフルページアニメーションを作成する方法

キーテイクアウト

  • フルページアニメーションは、CSS 3Dおよび2D変換とCSSアニメーションを使用して作成でき、Webコンテンツの従來のスクリプトベースのアニメーションに優(yōu)れた柔軟な代替品を提供します。 HTML要素は、CSSアニメーションを使用してこれらの効果を?qū)g現(xiàn)することができます。 CSSを適用するときに一貫した結(jié)果を確保するために、その內(nèi)容のサイズに関係なく、要素に変換されると、ボディ要素のサイズはブラウザウィンドウのサイズに固定でき、コンテンツはラッパー內(nèi)に追加できます。このアプローチは、複雑なコンテンツで発生する可能性のあるプログレッシブレンダリング、再レイアウト、またはリソースの読み込みをマスクすることもできます。
  • ブラウジングエクスペリエンス中に戦略的な時期にアニメーションを設(shè)定して、ページがロードされ、ユーザーがリンクをクリックしたときに表示されたときにコンテンツの外観を表示することができます。ページコンテンツを視界に遷移するアニメーションをセットアップする最適な場所は、要素の上部にインラインです。 AnimationEndイベントを使用して、アニメーションがいつ完了したかを検出してから、ナビゲーションイベントをトリガーできます。
  • インターネットエクスプローラー10のような最新のブラウザ10は、CSS 3Dおよび2D変換とCSSアニメーションをサポートしています。 GPUのパワーをタップし、通常のJavaScriptから非同期に実行することにより、これらのテクノロジーは、Webコンテンツの従來のスクリプトベースのアニメーションに対して、よりパフォーマンスのある柔軟な代替品を提供します。
  • 以前の記事では、CSS 3D変換とCSSアニメーションと遷移を使用して構(gòu)築する方法について話しました。 この記事では、ナビゲーションプロセス中に使用できる「フルページアニメーション」の概念を説明することにより、これらのテクノロジーに、より「型破りな」ユースケースを紹介して、閲覧に流動性と連続性を追加します。私たちの目標(biāo)は、ユーザーがページにアクセスしてリンクをクリックしたり、関連するアクションを?qū)g行したりすると、ユーザーがページにアクセスして移行するときにコンテンツがスムーズに表示されるシームレスなブラウジングエクスペリエンスを?qū)g現(xiàn)することです。
  • これらの効果は、CSSアニメーションを使用してHTML 要素を変換することで実現(xiàn)できます。ただし、このユースケースは、レイアウトやサイジングの変換に対するサイジングの効果や、アニメーションと適切にメッシュするように適切にページナビゲーションを適切に行う方法など、議論に値すると感じたいくつかの考慮事項を示しています。 > この投稿のコードサンプルは、IE10リリースプレビューでサポートされているように、再固定されていないCSSマークアップを使用します。他のブラウザには、CSSアニメーションのベンダープレフィックスが必要になる場合があり、使用されるCSS変換プロパティを変換します。
  • ページのコンテンツ全體の変換

CSS変換は、HTML DOM要素のスタイル特性で定義されています。たとえば、Z軸に沿って45度に沿って要素を回転させるためのマークアップは次のようになります。

#element {
    transform: rotateZ(45deg);
}

HTMLドキュメントの

要素に変換を添付すると、まったく同じように機能します。したがって、ドキュメントのに同じ効果を宣言的に追加するために実行すると、次のようなことができます。
body {
    transform: rotateZ(45deg);
}
ボディ要素に変換を適用するときに、ページの前後のショットを見てみましょう:

CSSを使用してフルページアニメーションを作成する方法 rotatez(45deg)の適用ドキュメントのボディ要素に変換。 3次元変換の場合、CSS変換仕様は、変換する要素の親に指定できる視點プロパティを定義します。コンテンツの要素を変換するときは、Dom階層にその上にある要素に適用する必要があります。そうすることは簡単です:

これを要素の回転(45deg)変換と組み合わせると、次の結(jié)果が得られます。

html {
    perspective: 500px;
}

視點で回転する(45Deg)変換をに適用する:500px 。

に設(shè)定 CSSを使用してフルページアニメーションを作成する方法興味深い結(jié)果を得るために、ボディ要素の変換オリジンプロパティを操作できます。いくつかの例を見てみましょう: 上記のマークアップは、変換オリジンを使用して回転の原點を要素の底に移動しながら、ボディ要素のxに沿った回転を設(shè)定します。事実上、これにより、ドキュメントの內(nèi)容がこのように畫面の「內(nèi)容」を回転させます。

body {
    transform-origin: 50% 100%;
    transform: rotateX(45deg);
}

ドキュメントのルート要素上の視點オリジンプロパティを操作して、軸外投影効果を?qū)g現(xiàn)することもできます。 のスタイルを次のように変更します CSSを使用してフルページアニメーションを作成する方法 私たちのページは次のようになりました:

html {
    perspective: 500px;
    perspective-origin: 90% 50%;
}

CSS変換を使用することにより、ページのコンテンツ全體の視覚的な外観を簡単に操作できます。通常のレイアウトとサイジングのルールがまだ適用されるため、ボディ要素(特にパーセンテージ値を使用したり、変換オリジンプロパティに依存しているもの)に変換されると、ページの內(nèi)容に応じて異なる視覚効果をもたらす可能性があります。 Transform-Originが50%100%に設(shè)定された以前のRotatex(45Deg)の例を思い出してください。

以下では、変換が適用される前後の結(jié)果を見ることができます。

CSSを使用してフルページアニメーションを作成する方法

コンテンツが実際にウィンドウの下部にピボットするのではなく、ビューポートの外側(cè)のある時點でどのようにピボットするかに注意してください。これは、CSS変換の予想される動作です。

は正常にレイアウトされ、畫面外のどこかにある下端に沿って回転します。また、変換されたコンテンツに対応するために、コンテンツの実際のフットプリントが拡張されていることに気付きます(「後」畫像のスクロールバーを見てください)発音)。

では、変換を身體要素に適用する際に、任意のサイズのコンテンツをどのように扱うのでしょうか?身體のサイズが特定の量を超えて拡大しないようにするために、すべてのコンテンツをカスタマイズすることは非現(xiàn)実的である可能性があります。代わりに、シンプルなHTML/CSSパターンを使用して、ボディ要素のサイズをブラウザウィンドウのサイズに固定し、ラッパー

にコンテンツを追加できます。次のマークアップは、まさにそれを達成します:
#element {
    transform: rotateZ(45deg);
}

以下の図は、ページが垂直にスクロールされたときに何が起こるかを示しており、ドキュメントの

要素に直接(左)要素にrotatey(45deg)変換を適用し、ラッパーパターンを使用して(右)(右):

CSSを使用してフルページアニメーションを作成する方法

変換の直接的な適用は、軸外投影のために歪んだ視覚的結(jié)果をもたらします(身體要素の「中心」を見ていないため)。ラッパーパターンを使用すると、要素の視點オリジンプロパティ(デフォルトでは50%50%)が常に

要素に関連して正しく中心になり、心地よい視覚効果が得られます。 上記のパターンを利用して、可能な場合はパーセント値でCSS変換をセットアップすることにより、その內(nèi)容のサイズに関係なく、要素に一貫した方法で影響を與えることができます。 変換からアニメーションへの

要素にCSS変換を適用する複雑さを整理したことで、CSSアニメーションは次のステップです。上記の原則に従うことにより、興味深い方法でWebコンテンツを視野に入れる(または削除する)アニメーションを作成できます。

このBasic @KeyFramesルールを検討してください:

要素に適用されると、このアニメーションは左側(cè)で回転させます。ラッパーパターンを使用する要素に適用すると、視覚的な結(jié)果がより興味深いものになります。ドキュメントは、実際にはブラウザウィンドウの可視領(lǐng)域の外側(cè)からフルビューに回転します。

body {
    transform: rotateZ(45deg);
}

同様に、Webコンテンツを視界から流動的に削除するアニメーションを作成できます。たとえば、回転中にページを遠くに消えたい場合は、次のようなものを使用できます。

#element {
    transform: rotateZ(45deg);
}

視覚的な結(jié)果は

です

CSSを使用してフルページアニメーションを作成する方法

CSSアニメーションのフルパワーを使用してWebコンテンツ全體に影響を與えることができるため、これらのページ効果を生成するという點では多くの柔軟性があります(CSS変換を使用するだけではありません)。しかし、コンテンツに適用したい効果を構(gòu)成したら、ページナビゲーションプロセス中にどのようにトリガーするのでしょうか?

アニメーションを

に添付します

私たちの目標(biāo)は、ブラウザエクスペリエンス中に戦略的な時期にトリガーアニメーションを使用して、ページがロードされたときにコンテンツの外観を表示し、ユーザーがリンクをクリックしたときに見えないようにすることです。

ボディ要素にアニメーションを追加する最初の直感的な場所は、オンロードJavaScriptイベントです。しかし、判明したように、オンロード火災(zāi)が実際には手遅れになったときにアニメーションを追加します。このイベントは、実際にページのコンテンツ全體が読み込みが終了したときにトリガーされます(畫像やその他の帯域幅集約型リソースを含む)。帯域幅集約型のページでアニメーションをオンロードに添付すると、コンテンツが「通?!工吮硎兢丹臁ⅳ饯吾?、アニメーションがトリガーをトリガーしてコンテンツを表示します。私たちが目指していた効果ではありません 代わりに、ブラウザがコンテンツのDOM構(gòu)造の解析を終了したときにトリガーするドンコンテンテントロードのイベントを利用することができます(ただし、リソースがロードが終了する前に潛在的に)。 IEテストドライブDomContentLoadedデモは、これら2つのイベントの違いを示しています。ただし、複雑なWebコンテンツの場合、最新のブラウザは「プログレッシブ」レンダリングを?qū)g行することを選択でき、DOMツリー全體がロードされる前にページを表示することができます。これらの狀況では、視覚的な結(jié)果はオンロードシナリオに似ています。

視界でページコンテンツを遷移するアニメーションをセットアップする最適な場所は、要素の上部にインラインです。これにより、コンテンツがレンダリングされているときにアニメーションが正しく開始されます(およびコンテンツの開始位置は、選択したアニメーションのキーフレームの開始位置になります)。このアプローチの快適な副作用は、アニメーションが実際に、複雑なコンテンツで発生する可能性のあるプログレッシブレンダリング、再レイアウト、またはリソースの読み込みをマスクする可能性があることです。

コンテンツを視界から外すアニメーションを設(shè)定することも興味深いものです。コンテンツの関心のあるすべての要素(たとえばすべてのタグ)にオンクリックハンドラーを添付し、コールバック関數(shù)で関連するアニメーションプロパティ(アニメーション名、アニメーション壽命など)を設(shè)定できると仮定することができます。 。ただし、実際にナビゲーションが発生を遅らせない場合、予想される流體の移行が表示されません。

これは、CSSアニメーションの仕様で説明されているアニメーションイベントを利用する良い機會です。特に、AnimationEndイベントを使用して、アニメーションがいつ完了したかを検出してから、ナビゲーションをトリガーすることができます(たとえば、window.location.hrefを設(shè)定して)。したがって、OnClickは「remof-from-view」アニメーションをトリガーし、

のAnimationEndのハンドラーを登録して、ナビゲーションイベントが発生することを保証します。

ライブデモが利用可能

ここで見せることができる以上の深さと例を提供するCSS変換とアニメーションでページを生き生きとさせるためのデモとチュートリアルを作成しました。チュートリアル自體は、Windows 8のInternet Explorer 10で動作するページナビゲーションと、ChromeとFirefoxの最近のバージョンで機能するページアニメーションを利用しています。

ページからページのアニメーションを楽しむだけで、各ページの右下隅にある「続行する」リンクを使用して、チュートリアルのページをステップスリートします。

チュートリアルの最後に、これらのアニメーションを獨自のWebコンテンツに組み込む方法に関する追加のガイダンスとサンプルコードを提供します。

それを包みます

CSS変換とCSSアニメーションは、より豊かで沒入型のWebエクスペリエンスを可能にする2つの強力な機能セットです。わずかな労力で、流動的でほとんどアプリのようなナビゲーションエクスペリエンスを提供するWebページ(靜的なページでも)を作成できます。 この投稿を読んで楽しんだなら、あなたは學(xué)ぶことができるのが大好きです。マスターから新鮮なスキルとテクニックを?qū)Wぶ場所。メンバーは、実用的なCSSのようなすべてのSitePointの電子ブックやインタラクティブなオンラインコースに即座にアクセスできます。

フルページのCSSアニメーションに関するよくある質(zhì)問

CSSアニメーションとJavaScriptアニメーションの重要な違いは何ですか?

CSSアニメーションとJavaScriptアニメーションは、Web要素をアニメーション化するという同じ目的を果たしますが、いくつかの重要な違いがあります。 CSSアニメーションは、特にシンプルなアニメーションの場合、よりシンプルで簡単に実裝できます。また、ブラウザのレンダリングエンジンによって処理されているため、パフォーマンスに優(yōu)しいです。ただし、CSSアニメーションは、JavaScriptアニメーションと比較して、制御と柔軟性が制限されています。一方、JavaScriptアニメーションは、より制御と柔軟性を提供し、複雑なアニメーションを可能にします。リアルタイムで一時停止、逆転、または操作することができ、ユーザーインタラクションにも応答することができます。ピクセルのような絶対ユニットの代わりに、パーセンテージやビューポートユニットなどのユニット。これにより、畫面サイズに関係なくアニメーションが適切にスケーリングされることが保証されます。メディアクエリを使用して、特定の畫面サイズまたはデバイスの種類に基づいてアニメーションを調(diào)整することもできます。すべてのブラウザがすべてのCSSアニメーションプロパティをサポートしているわけではありません。たとえば、Internet Explorerはアニメーション - タイミング機能プロパティをサポートしていません。クロスブラウザーの互換性を確保するために、アニメーションプロパティの前に-webkit-、-moz-、-o-、および-ms-などのベンダープレフィックスを使用できます。 Autoprefixerなどのツールを使用してこれらのプレフィックスを自動的に追加することもできます。アニメーション化されたプロパティ、特にレイアウトをトリガーするプロパティは、幅、高さ、マージンなどの変化します。代わりに、変換や不透明度などの複合材のみが変化するプロパティを使用します。また、Will-Changeプロパティを使用して、アニメーション化される可能性のあるプロパティについてブラウザに通知することもできます。 CSSでアニメーション化されます。これは、その値の間に中間狀態(tài)がないためです。ただし、不透明度と可視性のプロパティをアニメーション化することで同様の効果を達成できます。

CSSでループアニメーションを作成するにはどうすればよいですか? -iteration-countプロパティ。その値を無限に設(shè)定することにより、アニメーションは無期限に繰り返されます。財産。このプロパティは、アニメーションが1つのサイクルを完了するのにかかる時間の長さを定義します。 。その値を一時停止に設(shè)定することにより、アニメーションは実行を停止します。

CSSでバックグラウンドイメージプロパティをアニメーション化できますか?ただし、不透明なプロパティを使用して複數(shù)の背景畫像間でフェードすることで同様の効果を達成できます。

以上がCSSを使用してフルページアニメーションを作成する方法の詳細內(nèi)容です。詳細については、PHP 中國語 Web サイトの他の関連記事を參照してください。

このウェブサイトの聲明
この記事の內(nèi)容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰屬します。このサイトは、それに相當(dāng)する法的責(zé)任を負いません。盜作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡(luò)ください。

ホットAIツール

Undress AI Tool

Undress AI Tool

脫衣畫像を無料で

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード寫真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

寫真から衣服を削除するオンライン AI ツール。

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中國語版

SublimeText3 中國語版

中國語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統(tǒng)合開発環(huán)境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Garbage CollectionはJavaScriptでどのように機能しますか? Garbage CollectionはJavaScriptでどのように機能しますか? Jul 04, 2025 am 12:42 AM

JavaScriptのごみ収集メカニズムは、タグクリアリングアルゴリズムを介してメモリを自動的に管理して、メモリ漏れのリスクを減らします。エンジンはルートオブジェクトからアクティブオブジェクトを橫斷およびマークし、マークされていないオブジェクトはゴミとして扱われ、クリアされます。たとえば、オブジェクトが參照されなくなった場合(変數(shù)をnullに設(shè)定するなど)、次のリサイクルでリリースされます。メモリリークの一般的な原因には以下が含まれます。 closurures閉鎖の外部変數(shù)への參照。 globalグローバル変數(shù)は引き続き大量のデータを保持しています。 V8エンジンは、世代のリサイクル、増分マーキング、並列/同時リサイクルなどの戦略を通じてリサイクル効率を最適化し、メインスレッドのブロック時間を短縮します。開発中、不必要なグローバル?yún)⒄栅虮埭?、パフォーマンスと安定性を改善するためにオブジェクトの関連付けを迅速に裝飾する必要があります。

node.jsでHTTPリクエストを作成する方法は? node.jsでHTTPリクエストを作成する方法は? Jul 13, 2025 am 02:18 AM

node.jsでHTTPリクエストを開始するには、組み込みモジュール、axios、およびnode-fetchを使用する3つの一般的な方法があります。 1.依存関係のない內(nèi)蔵http/httpsモジュールを使用します。これは基本的なシナリオに適していますが、https.get()を使用してデータを取得したり、.write()を介してPOSTリクエストを送信するなど、データステッチとエラーモニタリングの手動処理が必要です。 2.Axiosは、約束に基づいたサードパーティライブラリです。簡潔な構(gòu)文と強力な機能を備えており、非同期/待ち聲、自動JSON変換、インターセプターなどをサポートします。非同期リクエスト操作を簡素化することをお勧めします。 3.Node-Fetchは、約束と単純な構(gòu)文に基づいて、ブラウザフェッチに似たスタイルを提供します

JavaScriptデータ型:プリミティブ対參照 JavaScriptデータ型:プリミティブ対參照 Jul 13, 2025 am 02:43 AM

JavaScriptデータ型は、プリミティブタイプと參照タイプに分割されます。プリミティブタイプには、文字列、數(shù)字、ブール、ヌル、未定義、シンボルが含まれます。値は不変であり、コピーは値を割り當(dāng)てるときにコピーされるため、互いに影響を與えません。オブジェクト、配列、関數(shù)などの參照タイプはメモリアドレスを保存し、同じオブジェクトを指す変數(shù)は互いに影響します。 TypeofとInstanceOFを使用してタイプを決定できますが、TypeOfNullの歴史的な問題に注意してください。これらの2種類の違いを理解することは、より安定した信頼性の高いコードを書くのに役立ちます。

JavaScript Timeオブジェクト、誰かがEACTEXE、Google Chromeなどのより高速なWebサイトを構(gòu)築します。 JavaScript Timeオブジェクト、誰かがEACTEXE、Google Chromeなどのより高速なWebサイトを構(gòu)築します。 Jul 08, 2025 pm 02:27 PM

こんにちは、JavaScript開発者!今週のJavaScriptニュースへようこそ!今週は、DenoとのOracleの商標(biāo)紛爭、新しいJavaScript Timeオブジェクトがブラウザ、Google Chromeアップデート、およびいくつかの強力な開発ツールによってサポートされています。始めましょう! 「JavaScript」の商標(biāo)を登録しようとするDeno Oracleの試みとのOracleの商標(biāo)紛爭は、論爭を引き起こしました。 Node.jsとDenoの作成者であるRyan Dahlは、商標(biāo)をキャンセルするために請願書を提出しました。

React vs Angular vs Vue:どのJSフレームワークが最適ですか? React vs Angular vs Vue:どのJSフレームワークが最適ですか? Jul 05, 2025 am 02:24 AM

どのJavaScriptフレームワークが最良の選択ですか?答えは、あなたのニーズに応じて最も適切なものを選択することです。 1.反応は柔軟で無料で、高いカスタマイズとチームアーキテクチャ機能を必要とする中規(guī)模および大規(guī)模プロジェクトに適しています。 2。Angularは、エンタープライズレベルのアプリケーションと長期的なメンテナンスに適した完全なソリューションを提供します。 3. Vueは使いやすく、中小規(guī)模のプロジェクトや迅速な発展に適しています。さらに、既存のテクノロジースタック、チームサイズ、プロジェクトのライフサイクル、およびSSRが必要かどうかは、フレームワークを選択する上で重要な要素でもあります。要するに、絶対に最良のフレームワークはありません。最良の選択は、あなたのニーズに合ったものです。

JavaScriptですぐに呼び出された関數(shù)式(IIFE)を理解します JavaScriptですぐに呼び出された関數(shù)式(IIFE)を理解します Jul 04, 2025 am 02:42 AM

iife(即時インドボークフニックエクスペッション)は、定義の直後に実行される関數(shù)式であり、変數(shù)を分離し、グローバルな範(fàn)囲の汚染を避けるために使用されます。括弧內(nèi)に関數(shù)を包むことによって呼び出され、式と括弧のペアがすぐにそれに続く、(function(){/code/})();そのコアの使用には、次のものが含まれます。1。さまざまな競合を回避し、複數(shù)のスクリプト間の命名の重複を防ぎます。 2。プライベートスコープを作成して、內(nèi)部変數(shù)を見えないようにします。 3。変數(shù)が多すぎずに初期化を容易にするモジュラーコード。一般的なライティング方法には、ES6矢印関數(shù)のパラメーターとバージョンで渡されたバージョンが含まれますが、式とタイを使用する必要があることに注意してください。

ハンドリングの約束:javascriptのチェーン、エラー処理、および約束の組み合わせ ハンドリングの約束:javascriptのチェーン、エラー処理、および約束の組み合わせ Jul 08, 2025 am 02:40 AM

約束は、JavaScriptで非同期操作を処理するためのコアメカニズムです。チェーンコール、エラー処理、コンビナーの理解は、アプリケーションをマスターするための鍵です。 1.チェーンコールは、.then()を通じて新しい約束を返し、非同期プロセスの連結(jié)を?qū)g現(xiàn)します。それぞれ.then()は以前の結(jié)果を受け取り、値または約束を返すことができます。 2。エラー処理は、.catch()を使用して例外をキャッチしてサイレント障害を回避し、キャッチのデフォルト値を返すためにプロセスを継続する必要があります。 3。promise.all()などの組み合わせ(すべての成功後にのみ成功しました)、promise.race()(最初の完了が返されます)、promise.allsettled()(すべての完了を待っています)

キャッシュAPIとは何ですか?また、サービスワーカーでどのように使用されますか? キャッシュAPIとは何ですか?また、サービスワーカーでどのように使用されますか? Jul 08, 2025 am 02:43 AM

Cacheapiは、ブラウザからネットワークリクエストをキャッシュするツールです。これは、ウェブサイトのパフォーマンスとオフラインエクスペリエンスを改善するために、サービスワーカーと併用することがよくあります。 1.開発者は、スクリプト、スタイルシート、寫真などのリソースを手動で保存できるようにします。 2。要求に応じてキャッシュ応答と一致させることができます。 3.特定のキャッシュの削除またはキャッシュ全體のクリアをサポートします。 4.フェッチイベントを聞いているサービスワーカーを介して、キャッシュの優(yōu)先順位またはネットワークの優(yōu)先戦略を?qū)g裝できます。 5.オフラインサポート、繰り返しのアクセス速度の高速化、主要なリソースのプリロード、バックグラウンドアップデートコンテンツによく使用されます。 6.それを使用する場合、キャッシュバージョンの制御、ストレージ制限、およびHTTPキャッシングメカニズムとの違いに注意する必要があります。

See all articles