検索

How to Get Started with CSS Animation

CSSアニメーション:CSS遷移を超えた動的効果

CSSアニメーションは、CSSトランジションの高度なバージョンであり、キーフレームを使用して複雑なエフェクトを作成し、アニメーション再生中に一時停止することができます。この記事では、CSSアニメーションのあらゆる側面を検討して、この強力なWebデザインテクノロジーを簡単に習得できます。

CSSアニメーションの作成:キーフレームとアニメーションプロパティ

CSSアニメーションを作成するには、最初にアニメーション名を指定し、キーフレームルールをグループ化する@keyframesルールを定義する必要があります。次に、ターゲット要素にアニメーションを適用します。

CSSアニメーションは、animation-delay(アニメーション遅延)、animation-duration(アニメーションの持続時間)、animation-name(アニメーション名)、animation-timing-function(アニメーションタイミング関数)など、さまざまな属性を通じて制御できます。 >(アニメーションの反復の数)、animation-iteration-count(アニメーションの方向)、animation-direction(アニメーション再生ステータス)、およびanimation-play-state(アニメーションフィルモード)。 animation-fill-mode

アニメーションコントロール:一時停止とループ

属性を使用して、アニメーションを一時停止します。 animation-play-stateプロパティをanimation-iteration-countに設定すると、無限のループを実現できます。 infinite

パフォーマンスとアクセシビリティ:慎重にアニメーションを使用してください

CSSアニメーションはユーザーエクスペリエンスを向上させることができますが、たとえば、特定の病気の患者がアニメーションからめまいや吐き気を経験する可能性があるため、アクセシビリティのリスクをもたらす可能性があるため、注意して使用する必要があります。感光性てんかんのある人に使用される可能性。さらに、アニメーションのパフォーマンスもアニメーションプロパティの影響を受け、一部のプロパティはリフローまたは再描画をトリガーする可能性があり、その結果、低パフォーマンスデバイスのパフォーマンスが低下します。

アニメーションとトランジションの違い:重要な違​​い

CSSアニメーションと姉妹技術CSSの移行にはいくつかの重要な違いがあります:

  • エレガントなダウングレード:アニメーションには、ブラウザがそれをサポートしていない場合、アニメーションが無効になり、JavaScriptが必要です。
  • ループ:アニメーションは無期限に繰り返されます。
  • キーフレーム:アニメーションは、キーフレームを使用して、より複雑で詳細な効果を作成します。
  • 一時停止:再生サイクル中にアニメーションを一時停止できます。

ブラウザの互換性:主流のブラウザーサポート

すべての主流ブラウザの最新バージョンは、CSSアニメーションをサポートしています。 Firefox 15以前は

プレフィックスが必要です。 Internet Explorer 10および11、およびMicrosoft Edgeのすべてのバージョンも、接頭辞付きアニメーションをサポートしています。 -moz-

検出アニメーションサポート:javaScriptメソッド

CSSアニメーションサポートは、さまざまな方法で検出できます。最初の方法は、windowオブジェクトのCSSKeyframeRuleメソッドが存在するかどうかをテストすることです。

const hasAnimations = 'CSSKeyframeRule' in window;
ブラウザが

ルールと@supportsAPIをサポートしている場合、次の方法を使用できます。 CSS.supports()

const hasAnimations = CSS.supports('animation-duration: 2s');
最初のアニメーションを作成します:キーフレームルールとアニメーションアプリケーション最初に、ルールを使用してアニメーションを定義します。 ルールには2つの関数があります

アニメーション名@keyframesを設定します @keyframesグループキーフレームルール

    たとえば、
  • と呼ばれるアニメーションを作成します
次に、要素にアニメーションを適用します:

pulse

@keyframes pulse {
    from {
        transform: scale(0.5);
        opacity: .8;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}
アニメーション属性の詳細な説明:アニメーション効果を慎重に制御する

.pulse {
    animation: pulse 500ms;
}

shorthand属性を使用することはより単純ですが、長い形式の属性を使用することが明確になる場合があります。以下は、長い形式のアニメーションプロパティです

プロパティ 説明 初期値 animation-delay アニメーション実行の前の待ち時間 0S (今すぐ実行) アニメーション期間 アニメーションサイクル期間 0S (アニメーションなし) animation-name ルールの名前 なし アニメーション - ティミングファンクション 開始状態と終了状態の間の値を計算する方法 ease Animation-Iteration-Count アニメーションの繰り返しの数 1 animation-direction アニメーションは後方に再生されますか? 通常(逆ではない) animation-play-state は、実行中または一時停止のアニメーションです 実行中 animation-fill-mode アニメーションが実行されていないときに適用される属性値を指定 なし

ループアニメーション:Animation-Iteration-Count Attribution

animation-iteration-countプロパティをinfiniteに設定すると、アニメーションループを無限にすることができます。

アニメーションの方向:アニメーション方向属性

animation-direction属性は、アニメーションの再生方向を制御するために使用される4つの値の4つの値を受け入れます。 normal reversealternateパーセントキーフレーム:より複雑なアニメーションシーケンスを作成alternate-reverse

より複雑なアニメーションシーケンスは、パーセンテージキーフレームを使用して作成できます。

アニメーションフィルモード:Animation-Fill-Mode Attribution

属性アニメーションが始まる前後の要素スタイルを制御します。

一時停止アニメーション:Animation-Play-State属性animation-fill-mode

属性を使用して、アニメーションを一時停止して復元します。

アニメーションイベントの検出:AnimationStart、AnimationEnd、およびAnimationationイベントanimation-play-state

javaScriptを使用して、

イベントを聞くことができます。

animationstartanimationendパフォーマンスの最適化:適切なアニメーション属性を選択animationiteration

を選択します

一部のプロパティは、他のプロパティよりも優れたパフォーマンスを発揮します。リフローや再描画をトリガーするプロパティのアニメーションを避けてください。

faq

この記事には、CSSアニメーションに関するよくある質問も含まれています。CSSアニメーションとCSSトランジション、アニメーション速度コントロール、ルールの役割、レイアウトアニメーション、リバース再生アニメーション、アニメーションの一時停止、アニメーションの違いをカバーする、無限ループアニメーション、SVG要素アニメーション、および

の違い。

この記事を研究することにより、より洗練された複雑なCSSアニメーションエフェクトを作成して、Webページのインタラクティブ性とユーザーエクスペリエンスを向上させることができます。 アニメーションを使用するときは、パフォーマンスとアクセシビリティに常に優先順位を付けることを忘れないでください。 @keyframes

以上がCSSアニメーションを始める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

この投稿では、Blackle Moriは、CohostのHTMLサポートの限界を押し広げようとしている間に見つかったハックのいくつかを示します。あえてこれらを使用してください、あなたもCSS犯罪者とラベル付けされないようにしてください。

カーソルの次のレベルCSSスタイリングカーソルの次のレベルCSSスタイリングApr 23, 2025 am 11:04 AM

CSSを備えたカスタムカーソルは素晴らしいですが、JavaScriptを使用して次のレベルに物事を引き出すことができます。 JavaScriptを使用して、カーソル状態間で移行し、カーソル内に動的テキストを配置し、複雑なアニメーションを適用し、フィルターを適用できます。

Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Worlds Collide:スタイルクエリを使用したキーフレーム衝突検出Apr 23, 2025 am 10:42 AM

2025年には、互いに互いに跳ね返る要素を伴うインタラクティブなCSSアニメーションは、CSSにPongを実装する必要はありませんが、CSSの柔軟性とパワーの増加はLee'の疑いを補強します。

UI効果にCSSバックドロップフィルターを使用しますUI効果にCSSバックドロップフィルターを使用しますApr 23, 2025 am 10:20 AM

CSSバックドロップフィルタープロパティを使用してユーザーインターフェイスをスタイルするためのヒントとコツ。バックドロップフィルターを複数の要素間でレイヤー化する方法を学び、それらを他のCSSグラフィカル効果と統合して、精巧なデザインを作成します。

微笑んでいますか?微笑んでいますか?Apr 23, 2025 am 09:57 AM

まあ、SVG'の組み込みのアニメーション機能は、計画どおりに非推奨されることはありませんでした。確かに、CSSとJavaScriptは負荷を運ぶことができる以上のものですが、以前のようにSmilが水中で死んでいないことを知っておくのは良いことです

「かわいい」は見る人の目にあります「かわいい」は見る人の目にありますApr 23, 2025 am 09:40 AM

イェーイ、テキストワラップのジャンプを見てみましょう:サファリテクノロジーのプレビューにかなり着陸してください!しかし、それがChromiumブラウザーでの仕組みとは異なることに注意してください。

CSS-Tricks XLIIIを記録しますCSS-Tricks XLIIIを記録しますApr 23, 2025 am 09:35 AM

このCSS-Tricksアップデートは、アルマナック、最近のポッドキャスト出演、新しいCSSカウンターガイド、および貴重なコンテンツを提供するいくつかの新しい著者の追加の大幅な進歩を強調しています。

Tailwind'の@Apply機能は、響きよりも優れていますTailwind'の@Apply機能は、響きよりも優れていますApr 23, 2025 am 09:23 AM

ほとんどの場合、人々はTailwind'の@Apply機能を紹介します。このように展示されたとき、@Applyはまったく有望な音をしません。だからobvio

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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

SublimeText3 中国語版

SublimeText3 中国語版

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

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール