検索
ホームページウェブフロントエンドCSSチュートリアルプロジェクトの実践: CSS アニメーションを使用してクールな効果を作成する方法に関する経験の共有

プロジェクトの実践: CSS アニメーションを使用してクールな効果を作成する方法に関する経験の共有

CSS アニメーションは、多くのフロントエンド開発者が一般的に使用する手法の 1 つで、クールなボタン、スムーズなページ読み込み効果、動的なページ コンテンツなど、非常に興味深い効果を実現できます。 . などこの記事では、CSS アニメーションを使用してクールな効果を作成する方法について、いくつかの経験を共有します。見てみましょう!

  1. アニメーション作成の基礎知識

アニメーションを作成する前に、いくつかの基礎知識を理解する必要があります。まず、CSS アニメーションを使用するには、CSS における「アニメーション」の概念を理解する必要があります。 CSS アニメーションはキーフレームを通じて実装されます。キーフレームは、特定の期間内の特定の状態を指し、これらの状態の間には遷移があります。たとえば、要素の最初の 1 秒目の位置を (0,0) に設定し、2 秒目の位置を (100,100) に設定すると、CSS アニメーションを通じて要素がこのパスに沿って移動します。

次に、CSS アニメーションの構文を理解する必要があります。以下は簡単な例です:

@keyframes example {
  0% {transform: translateX(0);}
  50% {transform: translateX(100px);}
  100% { transform: translateX(0);}
}

.example {
  animation: example 1s ease-in-out infinite;
}

この例では、@keyframes を通じてアニメーションの状態を指定し、.example クラスを通じてアニメーションを特定の要素に適用します。上記のコードでは、0%、50%、100% の 3 つの状態を持つ example という名前のアニメーションを定義します。 0%では要素の位置が初期位置、つまりX軸方向の変位が0になります。 50% では、要素の位置が右に 100 ピクセル移動します。 100% では、要素は元の位置に戻ります。最後に、animation 属性を使用して .example 要素にアニメーションを適用します。

これは単なる単純な例です。もちろん、animation-duration、animation-lay、animation-timing-function など、CSS アニメーションに使用できる構文やプロパティは他にもたくさんあります。実際の生産プロセスでは、ニーズに応じてこれらの属性を柔軟に使用する必要があります。

  1. クールなエフェクトを作成するためのヒント

CSS アニメーションの基本知識を習得したら、クールなエフェクトの作成を開始できます。以下に、いくつかの実践的なスキルを紹介します。

2.1 ボタン アニメーションの作成

ボタン アニメーションの作成は、非常に一般的なニーズです。以下では「ボタンを振る」を例に、CSSアニメーションを使ってこの効果を実現する方法を紹介します。

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, 0, 0);
  }
  
  20%, 80% {
    transform: translate3d(2px, 0, 0);
  }

  30%, 50%, 70% {
    transform: translate3d(-4px, 0, 0);
  }

  40%, 60% {
    transform: translate3d(4px, 0, 0);
  }
}

button {
  animation: shake 0.82s cubic-bezier(.36,.07,.19,.97) infinite;
}

上記のコードは、shake という名前のアニメーションを定義し、それをボタンに適用します。このアニメーションでは、transform 属性を通じてボタンの移動効果を実現し、cubic-bezier 関数を通じてアニメーションのイージング効果を調整します。このアニメーションをボタンに適用すると、期待どおりの「揺れ」効果が確認できます。

2.2 画像の出入り

この効果はスライドショーに似ています。画像が上または下から飛び込むたびに、前の画像が上または下から飛び出ます。底。 。次のコードは、この効果を実現します。

@keyframes slideIn {
  0% {
    transform: translateY(-100%);
  }

  100% {
    transform: translateY(0);
  }
}

@keyframes slideOut {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(100%);
  }
}

.slide-show {
  position: relative;
  height: 300px;
  overflow: hidden;
}

.slide-show img {
  position: absolute;
  width: 100%;
  top: 0;
  bottom: 0;
  margin: auto;
  animation-duration: 1s;
  animation-timing-function: ease-in-out;
  animation-fill-mode: forwards; 
}

.slide-show .slide1 {
  animation-name: slideIn;
}

.slide-show .slide2 {
  animation-name: slideOut;
}

.slide-show .slide2.active {
  animation-name: slideIn;
}

上記のコードでは、slideIn と slideOut という名前の 2 つのアニメーションを定義し、それによって画像が飛んだり飛んだりする効果を実現します。次に、コンテナ .slide-show を介して画像をラップし、各画像に異なるクラス名 (.slide1、.slide2 など) を割り当てます。画像を切り替える必要がある場合は、現在の画像のクラス名を「active」に変更し、JavaScript を使用して DOM を操作するだけです。

上記の 2 つの例は、CSS アニメーションの氷山の一角にすぎません。読者が CSS アニメーションをさらに習得し、よりクールな効果を作成できるようにしたいと考えています。

以上がプロジェクトの実践: 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 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

mPDF

mPDF

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

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

MantisBT

MantisBT

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。