検索
ホームページウェブフロントエンドCSSチュートリアルCSS アニメーション: 要素のフラッシュ効果を実現する方法

CSS アニメーション: 要素のフラッシュ効果を実現する方法

CSS アニメーション: 要素のフラッシュ効果を実現する方法、具体的なコード例が必要です。

Web デザインでは、アニメーション効果が優れたユーザー エクスペリエンスをもたらすことがあります。ページにグリッター効果は、要素をより目を引くようにできる一般的なアニメーション効果です。 CSSを使って要素のフラッシュ効果を実現する方法を紹介します。

1. flash の基本的な実装

まず、CSS のアニメーション プロパティを使用してフラッシュ効果を実現する必要があります。アニメーションプロパティの値には、アニメーション名、アニメーション実行時間、アニメーション遅延時間、アニメーション実行方法、アニメーション実行時間を指定する必要があります。フラッシュ効果については、無限ループアニメーションとして指定できます。

次に、要素のスタイルを指定する必要があります。グリッター効果では要素自体の色を変更する必要があるため、CSS の currentColor プロパティを使用して、要素の現在のテキストの色をグリッターの色として取得できます。セレクターを使用して要素のスタイルをフラッシュ効果から分離することもできるため、コントロールのスタイルとアニメーションを分離できます。

以下は簡単なサンプル コードです:

/* 为需要实现闪光效果的元素添加样式 */
.shine {
  color: black;
}

/* 定义闪光动画 */
@keyframes shining {
  0% {
    box-shadow: 0 0 0 0 currentColor;
  }
  50% {
    box-shadow: 0 0 0 1rem transparent;
  }
  100% {
    box-shadow: 0 0 0 0 currentColor;
  }
}

/* 应用闪光动画 */
.shine::before {
  animation: shining 2s infinite;
  content: '';
  display: block;
  position: absolute;
  top: -1rem;
  left: -1rem;
  right: -1rem;
  bottom: -1rem;
  z-index: -1;
  opacity: 0;
}

上記のスタイル コードでは、要素をスタイル設定するために .shine という名前のクラスを定義します。アニメーションを定義するときは、@keyframes ルールを使用して Shining という名前のアニメーションを定義し、点滅効果を実現する 3 つのキーフレームを設定します。

次に、 pseudo-class::before を使用して、絶対に配置された透明レイヤーを要素に追加し、そのレイヤーにキラキラ効果のアニメーションを適用します。

2. 互換性に関する考慮事項

上記のコードは Flash 効果を実現できますが、コードはすべてのブラウザーと互換性があるわけではありません。 caniuse.com によると、box-shadow プロパティと currentColor プロパティの両方に互換性の問題があります。

この問題を解決するには、上記のコードにいくつかの変更を加えることができます。まず、box-shadow プロパティを透明な背景画像に置き換えることができます。次に、CSS の rgba() 関数を使用して、フラッシュの色と透明度を制御できます。

次は、変更されたサンプル コードです。

/* 为需要实现闪光效果的元素添加样式 */
.shine {
  color: black;
}

/* 定义闪光动画 */
@keyframes shining {
  0% {
    opacity: 0;
    background-color: rgba(255, 255, 255, 0);
  }
  50% {
    opacity: 1;
    background-color: rgba(255, 255, 255, 0.5);
  }
  100% {
    opacity: 0;
    background-color: rgba(255, 255, 255, 0);
  }
}

/* 应用闪光动画 */
.shine::before {
  animation: shining 2s infinite;
  content: '';
  display: block;
  position: absolute;
  top: -1rem;
  left: -1rem;
  right: -1rem;
  bottom: -1rem;
  z-index: -1;
}

上記の変更されたコードでは、box-shadow 属性の代わりに、background-color 属性と opacity 属性を使用します。 Flash アニメーションを定義するときは、rgba() 関数を使用して色と透明度を設定します。このようにして、最新のすべてのブラウザにグリッター効果を実装できます。

3. その他の最適化

次に、コードにいくつかの最適化を加えます。たとえば、Web ページのパフォーマンスを向上させるために、ページが最初に読み込まれるときにアニメーション効果の実行を無効にすることができます。 CSS の will-change プロパティを使用して、アニメーション再生中のレンダリング パフォーマンスを高速化することもできます。

以下は、最適化されたコードの例です:

/* 为需要实现闪光效果的元素添加样式 */
.shine {
  color: black;
}

/* 定义闪光动画 */
@keyframes shining {
  0% {
    opacity: 0;
    background-color: rgba(255, 255, 255, 0);
  }
  50% {
    opacity: 1;
    background-color: rgba(255, 255, 255, 0.5);
  }
  100% {
    opacity: 0;
    background-color: rgba(255, 255, 255, 0);
  }
}

/* 优化样式 */
.shine::before {
  will-change: opacity, background-color;
}

/* 禁用闪光动画在载入时立即执行 */
.shine:not(:hover)::before {
  animation-play-state: paused;
}

/* 开启闪光动画 */
.shine:hover::before {
  animation-play-state: running;
  animation: shining 2s infinite;
  content: '';
  display: block;
  position: absolute;
  top: -1rem;
  left: -1rem;
  right: -1rem;
  bottom: -1rem;
  z-index: -1;
}

上記の変更されたコードでは、CSS の will-change プロパティを使用して、要素のレンダリングを最適化するようにブラウザーに指示します。ページの読み込み時にアニメーション効果がすぐに実行されないようにするには、animation-play-state 属性を使用して初期の一時停止状態を設定します。最後に、マウスが要素の上に移動すると、:hover 疑似クラスを使用してフラッシュ アニメーションをオンにし、アニメーション属性値を輝かせるように設定します。

概要

上記のサンプル コードを通じて、CSS を使用して要素のフラッシュ効果を実現する方法を確認できます。この効果により、Web デザインに優れたユーザー エクスペリエンスをもたらすことができます。この効果を実現するには、コードの互換性とパフォーマンスに注意を払う必要があります。練習中に問題が発生した場合は、コードの最適化を試みたり、他の解決策を試したりすることができます。

以上がCSS アニメーション: 要素のフラッシュ効果を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
2つの画像とAPI:製品のリクロッキングに必要なすべて2つの画像とAPI:製品のリクロッキングに必要なすべてApr 15, 2025 am 11:27 AM

最近、製品画像の色を動的に更新するソリューションを見つけました。したがって、製品の1つだけで、私たちはそれをさまざまな方法で色付けすることができます

毎週のプラットフォームニュース:サードパーティのコード、パッシブ混合コンテンツ、最も遅い接続のある国の影響毎週のプラットフォームニュース:サードパーティのコード、パッシブ混合コンテンツ、最も遅い接続のある国の影響Apr 15, 2025 am 11:19 AM

今週のラウンドアップでは、灯台はサードパーティのスクリプトに光を当て、安全なリソースが安全なサイトでブロックされ、多くの国の接続速度がブロックされます

独自の非JavaScriptベースの分析をホストするためのオプション独自の非JavaScriptベースの分析をホストするためのオプションApr 15, 2025 am 11:09 AM

サイトの訪問者と使用データを追跡するのに役立つ分析プラットフォームがたくさんあります。おそらく、特にGoogleアナリティクスが広く使用されています

それはすべて頭の中にあります:Reactヘルメットを使用してReact Poweredサイトのドキュメントヘッドを管理するそれはすべて頭の中にあります:Reactヘルメットを使用してReact Poweredサイトのドキュメントヘッドを管理するApr 15, 2025 am 11:01 AM

ドキュメントヘッドはウェブサイトの中で最も魅力的な部分ではないかもしれませんが、それに入るものは間違いなくあなたのウェブサイトの成功にとってそれと同じくらい重要です

JavaScriptのsuper()とは何ですか?JavaScriptのsuper()とは何ですか?Apr 15, 2025 am 10:59 AM

子のクラスでsuper()?を呼び出すJavaScriptを見たときに何が起こっているのか、Super()を使用して親のコンストラクターとSuperを呼び出します。そのアクセス

さまざまな種類のネイティブJavaScriptポップアップを比較しますさまざまな種類のネイティブJavaScriptポップアップを比較しますApr 15, 2025 am 10:48 AM

JavaScriptには、ユーザーインタラクション用の特別なUIを表示するさまざまな内蔵ポップアップAPIがあります。有名:

アクセス可能なWebサイトが構築が難しいのはなぜですか?アクセス可能なWebサイトが構築が難しいのはなぜですか?Apr 15, 2025 am 10:45 AM

先日、私は多くの企業がアクセス可能なウェブサイトを作るのに苦労している理由について、フロントエンドの人々とおしゃべりをしていました。アクセス可能なWebサイトがとても難しいのはなぜですか

「隠された」属性は目に見えて弱いです「隠された」属性は目に見えて弱いですApr 15, 2025 am 10:43 AM

あなたがそれがすべきだと思うことを正確に行うHTML属性があります:

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

Eclipse を SAP NetWeaver アプリケーション サーバーと統合します。

WebStorm Mac版

WebStorm Mac版

便利なJavaScript開発ツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター