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;ブラウザが
ルールと@supports
APIをサポートしている場合、次の方法を使用できます。
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
reverse
alternate
パーセントキーフレーム:より複雑なアニメーションシーケンスを作成alternate-reverse
より複雑なアニメーションシーケンスは、パーセンテージキーフレームを使用して作成できます。
アニメーションフィルモード:Animation-Fill-Mode Attribution属性アニメーションが始まる前後の要素スタイルを制御します。
一時停止アニメーション:Animation-Play-State属性animation-fill-mode
属性を使用して、アニメーションを一時停止して復元します。
アニメーションイベントの検出:AnimationStart、AnimationEnd、およびAnimationationイベントanimation-play-state
javaScriptを使用して、、、
イベントを聞くことができます。
animationstart
animationend
パフォーマンスの最適化:適切なアニメーション属性を選択animationiteration
一部のプロパティは、他のプロパティよりも優れたパフォーマンスを発揮します。リフローや再描画をトリガーするプロパティのアニメーションを避けてください。
faqこの記事には、CSSアニメーションに関するよくある質問も含まれています。CSSアニメーションとCSSトランジション、アニメーション速度コントロール、ルールの役割、レイアウトアニメーション、リバース再生アニメーション、アニメーションの一時停止、アニメーションの違いをカバーする、無限ループアニメーション、SVG要素アニメーション、およびと
の違い。
この記事を研究することにより、より洗練された複雑なCSSアニメーションエフェクトを作成して、Webページのインタラクティブ性とユーザーエクスペリエンスを向上させることができます。 アニメーションを使用するときは、パフォーマンスとアクセシビリティに常に優先順位を付けることを忘れないでください。 @keyframes
以上がCSSアニメーションを始める方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

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

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

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

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

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

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

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


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

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

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

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

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

ホットトピック









