検索
ホームページウェブフロントエンドCSSチュートリアルCSS の基本的なアニメーション概念をマスターする

CSS アニメーション: ウェブサイトに活力と動きを与える魔法

CSS アニメーションは魔法のように機能し、Web サイトをよりダイナミックで魅力的なものにします。アニメーションを使用すると、Web サイト要素を簡単に移動したり、色を変更したり、サイズをスムーズに変更したりできます。

アニメーションをよりインタラクティブで流動的なものにするには、まずアニメーションの基本概念を理解する必要があります。この記事では、アニメーションの動作を制御するための基本的なルール構文とアニメーションのアニメーション プロパティについて学習します。

始めましょう! ?

CSS アニメーションの使用を開始するには、2 つの基本コンポーネントを理解する必要があります:

  • @keyframes: アニメーション用のブループリント。
  • アニメーションのプロパティ: アニメーションの設定を制御します。

@keyframes

@keyframes はアニメーションのロードマップであり、アニメーションの開始点と終了点、およびその間のステップを定義します。

つまり、この部分はアニメーションがどのように開始され、途中でどのように実行され、どのように終了するかを定義します。

文法:

<code>@keyframes animationName {
  from {
    /* 开始样式 */
  }
  to {
    /* 结束样式 */
  }
}</code>

例:

<code>@keyframes fadeIn {
  from {
    opacity: 0; /* 不可见 */
  }
  to {
    opacity: 1; /* 可见 */
  }
}</code>

この例では、要素の不透明度は 0 から始まり、1 になります。

続行する前に、CSS アニメーションの専門家になれるこの電子書籍をチェックしてください:

? CSS アニメーションの基礎: ベスト プラクティス、トリック、パフォーマンスのヒント

この電子書籍では、単純なフェードから複雑なアニメーションまで、CSS アニメーションをマスターするために必要な以下のすべてがカバーされています。

  • タイミング機能
  • キーフレームとアニメーションのプロセス
  • パフォーマンスの最適化
  • 現実世界のアプリケーション

スムーズな CSS アニメーションを作成したい開発者に最適です。今すぐコピーを入手してください!

アニメーションのプロパティ

CSS アニメーションをカスタマイズするには、さまざまなプロパティが使用され、それぞれに独自の役割があり、アニメーションの動作を定義します。

アニメーションのプロパティは要素に直接適用され、アニメーションの名前、期間、遅延、方向などを定義します。

文法:

<code>.element {
  animation-name: fadeIn; /* 动画名称或@keyframes */
  animation-duration: 2s; /* 动画持续时间 */
}</code>

例:

<code>.box {
   height: 100px;
   width: 100px;
   background-color: rgb(44, 117, 117);
   animation-name: fadeIn;  /* 动画名称 */
   animation-duration: 2s; /* 动画持续时间 */
}
@keyframes fadeIn {
   from {
     opacity: 0; /* 不可见 */
   }
   to {
     opacity: 1; /* 可见 */
   }
}</code>

この例では、クラス名「box」を持つ要素は最初は非表示ですが、2 秒後に表示されるようになり、滑らかなフェードイン効果が作成されます。

CSS には次のアニメーション プロパティがあります:

  • アニメーション名
  • アニメーション期間
  • アニメーションタイミング関数
  • アニメーション遅延
  • アニメーション反復回数
  • アニメーションの方向
  • アニメーションフィルモード
  • アニメーションの再生状態

それでは、それぞれの属性を理解しましょう。

アニメーション名

機能:

この属性は、どの @keyframes アニメーションを適用するかを定義するために使用されます。

たとえば、fadeIn または fadeOut という名前の 2 つの @keyframe がある場合、animation-name 属性を使用して、どの要素に fadeIn アニメーションを適用するか、どの要素に fadeOut アニメーションを適用するかを定義できます。

文法:

<code>animation-name: animationName;</code>

例:

<code>animation-name: fadeIn;</code>

アニメーションを実行するには、animation-name 属性が必要です。

アニメーション期間

機能:

このプロパティは、アニメーションの継続時間、つまりアニメーションの実行にかかる時間を定義します。

アニメーションの継続時間を秒 (s) またはミリ秒 (ms) で定義できます。

文法:

<code>@keyframes animationName {
  from {
    /* 开始样式 */
  }
  to {
    /* 结束样式 */
  }
}</code>

例:

<code>@keyframes fadeIn {
  from {
    opacity: 0; /* 不可见 */
  }
  to {
    opacity: 1; /* 可见 */
  }
}</code>

animation-duration を定義しない場合は、自動的に 0 秒 (デフォルト) に設定され、事実上アニメーションが無効になります。

アニメーションタイミング関数

機能:

この属性は、アニメーションの速度モードを定義するために使用されます。つまり、このプロパティを使用して、アニメーションをゆっくりと開始するか、一定の速度で実行するか、または速く実行するかを定義できます。

次の値があります:

  • linear: アニメーションは一定の速度で実行されます。
  • 緩和: ゆっくり始まり、途中で速く、ゆっくりと終わります。
  • イーズイン: ゆっくりと始めます。
  • イーズアウト: ゆっくりと終了します。
  • イーズインアウト: ゆっくりとした開始とゆっくりとした終了。
  • cubic-bezier(x1, y1, x2, y2): カスタム速度モード。

例:

<code>.element {
  animation-name: fadeIn; /* 动画名称或@keyframes */
  animation-duration: 2s; /* 动画持续时间 */
}</code>

アニメーション遅延

機能:

このプロパティは、アニメーションが開始するまでに待機する時間、つまりアニメーションの遅延を定義します。

文法:

<code>.box {
   height: 100px;
   width: 100px;
   background-color: rgb(44, 117, 117);
   animation-name: fadeIn;  /* 动画名称 */
   animation-duration: 2s; /* 动画持续时间 */
}
@keyframes fadeIn {
   from {
     opacity: 0; /* 不可见 */
   }
   to {
     opacity: 1; /* 可见 */
   }
}</code>

例:

<code>animation-name: animationName;</code>

アニメーション反復回数

機能:

この属性は、アニメーションの繰り返し回数、つまりアニメーションが何回繰り返されるかを定義するために使用されます。

次の値があります:

  • 1: アニメーションは 1 回だけ実行されます (これがデフォルトです)。
  • 無限: アニメーションは継続的に繰り返されます。
  • 任意の回数: アニメーションは、定義した回数だけ実行されます。

例:

<code>animation-name: fadeIn;</code>

アニメーションの方向

機能:

このプロパティはアニメーションの方向を定義します。

次の値があります:

  • normal: アニメーションは順方向に実行されます (これがデフォルトです)。
  • reverse: アニメーションは逆方向に実行されます。
  • alternate: アニメーションは、前方に 1 回、後方に 1 回、交互に実行されます。
  • alternate-reverse: アニメーションは最初に逆方向に実行され、次に順方向に実行されます。

例:

<code>animation-duration: time;</code>

アニメーションフィルモード

機能:

この属性は、アニメーションの開始前と終了後の要素のスタイルを定義するために使用されます。アニメーションが再生されていないときに要素にどのスタイルを適用するかを定義します。

アニメーションの前後で要素の外観を制御できるため、アニメーション中の要素の状態をより柔軟に管理できます。

次の値があります:

  • none: アニメーションの前後にスタイルは適用されません。
  • forwards: アニメーションの終了スタイルを保持します。
  • backwards: これにより、遅延時間内でアニメーションの開始スタイルも適用されます。
  • both: 開始スタイルと終了スタイルを処理します。

例:

<code>animation-duration: 4s; /* 动画将运行4秒 */</code>

アニメーションの再生状態

機能:

この属性は、アニメーションの状態 (実行中または一時停止) を指定します。

次の値があります:

  • 実行中: アニメーションは継続します。
  • 一時停止: アニメーションは停止されますが、状態は保持されます。

例:

<code>@keyframes animationName {
  from {
    /* 开始样式 */
  }
  to {
    /* 结束样式 */
  }
}</code>

このプロパティは、ホバー時のアニメーションの一時停止など、インタラクティブなアニメーションに使用されます。

アニメーションの短縮構文

アニメーションの短縮表現を使用すると、複数のアニメーション プロパティを 1 行で定義できます。各アニメーション プロパティを 1 つずつ記述する代わりに、これらを 1 行に結合して読みやすくすることができます。

文法:

<code>@keyframes fadeIn {
  from {
    opacity: 0; /* 不可见 */
  }
  to {
    opacity: 1; /* 可见 */
  }
}</code>

例:

<code>.element {
  animation-name: fadeIn; /* 动画名称或@keyframes */
  animation-duration: 2s; /* 动画持续时间 */
}</code>

こちら、

  • スライド: アニメーションの名前。
  • 3s: アニメーションの長さは 3 秒です。
  • イーズインアウト: 時間指定機能はイーズインアウトです。つまり、アニメーションはゆっくりと開始され、速度が上がり、その後再び遅くなります。
  • 1s: アニメーションは 1 秒遅れて開始します。
  • infinite: アニメーションは無限に繰り返されます。
  • alternate: アニメーションは反復ごとに前方への移動と後方への移動を交互に行います。
  • forwards: 最後のキーフレーム (100%) で適用されたスタイルは、アニメーションの完了後も保持されます。

アニメーションチートシート

私は、CSS アニメーションで使用されるすべての主要な概念、プロパティ、および構文をカバーする包括的な CSS アニメーション チートシート を作成しました。

以下のリンクをクリックすると、GitHub でチートシートをダウンロードできます:

https://www.php.cn/link/02f5df8adf0db026d38425594e68a007

Mastering CSS Basic Animation Concepts

それだけです。

お役に立てば幸いです。

読んでいただきありがとうございます。

私の記事が役立つと感じて、私の仕事をサポートしたい場合は、私にコーヒーを買うことを検討してください☕。

このようなコンテンツをさらにご覧になりたい場合は、ここをクリックしてください。

X (Twitter) で私をフォローして、毎日の Web 開発のヒントを入手してください。

コーディングを続けてください! !

以上がCSS の基本的なアニメーション概念をマスターするの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
これは発生することは想定されていません。不可能をトラブルシューティングしますこれは発生することは想定されていません。不可能をトラブルシューティングしますMay 15, 2025 am 10:32 AM

あなたが考えたことのない他の何かであることが判明したそれらの不可能な問題の1つをトラブルシューティングすることがどのように見えるか。

@KeyFrames対CSSトランジション:違いは何ですか?@KeyFrames対CSSトランジション:違いは何ですか?May 14, 2025 am 12:01 AM

@keyframesandcsstransitionsdifferincomplexity:@keyframesallowsfordeTailedAnimationのシーケンス、whilecsstransitionshandlesimplestatechanges.usecsstransitionsは、ButtonColorChanges、および@keyframesforintricateanimationslikerotatingingspinnnersを使用します。

静的サイトコンテンツ管理にページCMSを使用します静的サイトコンテンツ管理にページCMSを使用しますMay 13, 2025 am 09:24 AM

私は知っています、私は知っています:たくさんのコンテンツ管理システムオプションが利用可能であり、私はいくつかテストしましたが、実際にはY&#039;知っているものはありませんでしたか?奇妙な価格設定モデル、困難なカスタマイズ、一部は全体になることさえあります&

HTMLのCSSファイルをリンクするための究極のガイドHTMLのCSSファイルをリンクするための究極のガイドMay 13, 2025 am 12:02 AM

CSSファイルをHTMLにリンクすることは、HTMLの一部で要素を使用することで実現できます。 1)タグを使用して、ローカルCSSファイルをリンクします。 2)複数のタグを追加することにより、複数のCSSファイルを実装できます。 3)外部CSSファイルは、そのような絶対URLリンクを使用します。 4)ファイルパスとCSSファイルの読み込み順序の正しい使用を確認し、パフォーマンスを最適化すると、CSSプリプロセッサを使用してファイルをマージできます。

CSS Flexbox vsグリッド:包括的なレビューCSS Flexbox vsグリッド:包括的なレビューMay 12, 2025 am 12:01 AM

FlexBoxまたはグリッドの選択は、レイアウト要件によって異なります。1)FlexBoxは、ナビゲーションバーなどの1次元レイアウトに適しています。 2)グリッドは、雑誌のレイアウトなどの2次元レイアウトに適しています。この2つは、レイアウト効果を改善するためにプロジェクトで使用できます。

CSSファイルを含める方法:メソッドとベストプラクティスCSSファイルを含める方法:メソッドとベストプラクティスMay 11, 2025 am 12:02 AM

CSSファイルを含める最良の方法は、タグを使用してHTMLパーツに外部CSSファイルを導入することです。 1.タグを使用して、外部CSSファイルを導入します。 2。小さな調整のために、インラインCSSを使用できますが、注意して使用する必要があります。 3.大規模プロジェクトでは、@Importを介して他のCSSファイルをインポートするために、SASS以下などのCSSプリプロセッサを使用できます。 4。パフォーマンスのために、CSSファイルをマージし、CDNを使用し、CSSNANOなどのツールを使用して圧縮する必要があります。

FlexBox対グリッド:両方を学ぶべきですか?FlexBox対グリッド:両方を学ぶべきですか?May 10, 2025 am 12:01 AM

はい、Youはrelearnbothlexboxandgrid.1)FlexBoxisidealforone-Dimensional、FlexiblleayoutslikenavigationMenus.2)Gridexcelsintwo-digsignssuchasmagazinelayouts.3)Bothenhanceslaysutibulivedibulisunivedivition、floctonsulururを

軌道力学(またはCSSキーフレームアニメーションの最適化方法)軌道力学(またはCSSキーフレームアニメーションの最適化方法)May 09, 2025 am 09:57 AM

独自のコードをリファクタリングするのはどのように見えますか?ジョン・レアは、彼が書いた古いCSSアニメーションを選び、それを最適化するという思考プロセスを歩きます。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

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

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

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

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール