CSS 読み込み効果の実装 パックマン

CSS 読み込み効果の実装 パックマン
えーっと、名前はただの推測です 2333

序文

これは練習用の CSS デモです。何か間違っている点があれば、ご指摘ください。偏見なく受け入れます。わーい

HTMLレイアウト

  <div class="コンテナ">
    <div class="読み込み中">
      <div class="食べる"></div>
      <div class="load"></div>
      <div class="load"></div>
      <div class="load"></div>
    </div>
  </div>

CSS スタイル

使用される主な効果はアニメーションであり、要素の角度位置を継続的に制御して、パックマンに似た読み込みデモを実現します。
    体 {
      マージン: 0;
      パディング: 0;
      背景: #fff;
    }
    。容器 {
      位置: 絶対;
      上位: 50%;
      左: 50%;
      変換: translate(-50%, -50%);
    }
    .読み込み中{
      位置: 相対的;
      幅: 200ピクセル;
      高さ: 50px;
      ディスプレイ: フレックス;
    }
    。食べる {
      位置: 相対的;
      幅: 50px;
      高さ: 50px;
      左: 0;
      色: #ff0000;
      アニメーション: eat-animate 2.4s easy-in-out infinite;
    }
    @keyframes 食べるアニメーション {
      100% {
        左: 150px;
      }
    }
    .eat::before {
      コンテンツ: '';
      位置: 絶対;
      幅: 0;
      高さ: 0;
      幅: 50px;
      高さ: 25px;
      上: 0;
      境界線の半径: 50px 50px 0 0;
      背景: 現在の色;
      変換: 回転(-30度);
      アニメーション: eat-top 2.4s easy-in-out infinite;
    }
    @keyframes 食べるトップ {
      20% {
        変換: 回転(-30度);
      }
      35% {
        変換: 回転(0度);
      }
      45% {
        変換: 回転(-30度);
      }
      60% {
        変換: 回転(0度);
      }
      70% {
        変換: 回転(-30度);
      }
      85% {
        変換: 回転(0度);
      }
      100% {
        変換: 回転(0度);
      }
    }
    .eat::after {
      コンテンツ: '';
      位置: 絶対;
      幅: 0;
      高さ: 0;
      幅: 50px;
      高さ: 25px;
      下部: 0;
      境界線の半径: 0 0 50px 50px;
      背景: 現在の色;
      変換: 回転(30度);
      アニメーション: eat-bottom 2.4s easy-in-out infinite;
    }
    @keyframes 食べるボトム {
      20% {
        変換: 回転(30度);
      }
      35% {
        変換: 回転(0度);
      }
      45% {
        変換: 回転(30度);
      }
      60% {
        変換: 回転(0度);
      }
      70% {
        変換: 回転(30度);
      }
      85% {
        変換: 回転(0度);
      }
      100% {
        変換: 回転(0度);
      }
    }
    。負荷 {
      位置: 相対的;
      幅:30px;
      高さ: 30px;
      マージン: 10px;
      色: #e47272;
      境界線の半径: 50%;
      背景: 現在の色;
    }
    .load:n番目の子(2) {
      アニメーション: load1 2.4s 線形無限;
      変換: スケール(1);
    }
    @キーフレームロード1 {
      35% {
        変換: スケール(0);
      }
      100% {
        変換: スケール(0);
      }
    }
    .load:n番目の子(3) {
      アニメーション: load2 2.4s 線形無限;
      変換: スケール(1);
    }
    @キーフレームロード2 {
      30% {
        変換: スケール(1);
      }
      58%
        変換: スケール(0);
      }
      100% {
        変換: スケール(0);
      }
    }
    .load:n番目の子(4) {
      アニメーション: load3 2.4s 線形無限;
      変換: スケール(1);
    }
    @キーフレームロード3 {
      60% {
        変換: スケール(1);
      }
      80% {
        変換: スケール(0);
      }
      100% {
        変換: スケール(0);
      }
    }

プレビュー

全体像は上記の通りです。分からない場合は直接返信していただいても結構です。

現在 https://github.com/ajycc20/easy-css-layout で更新中です。コメントをお待ちしています。 ! !

あと、星があったほうがいいですね(笑)

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  Webデザインチュートリアル(8):Webページの階層と空間デザイン

>>:  【Webデザイン】E-WebTemplates の美しい海外の Web ページ テンプレート (FLASH+PSD ソース ファイル+HTML) を共有します

推薦する

MySQL データベースのステートメント ワイルドカード ファジー クエリの概要

MySQL エラー: パラメータ インデックスが範囲外です (1 > パラメータ数、つまり 0...

Nuxt.jsプロジェクトのDockerデプロイメントの実装

Docker 公式ドキュメント: https://docs.docker.com/ Docker は...

CSS でよく使用されるフォントサイズ、フォント単位、行の高さの詳細な説明

px(ピクセル)ピクセルという言葉は皆さんもよくご存知だと思います。次に、この単位に関するちょっとし...

mysql5.7.24 バージョンのインストール手順と解凍時に発生した問題の概要

1. ダウンロード参考: 2. D:\MySQL\mysql-5.7.24 などの固定の場所に解凍し...

Vue3.0 手書き拡大鏡効果

達成される効果は、固定ズームが 2 倍になり、マウスが左側の画像領域に入るとマスク レイヤーが表示さ...

チェックボックスとラジオボタンの配置を実装する方法

ブラウザによって動作が異なるだけでなく、フォントやテキスト サイズによっても動作が異なります。フォー...

Linux/CentOS システムでネットワーク時間を同期する 2 つの方法の詳細な説明

ハードウェア上の理由により、機械は標準時間にある程度追いつけない場合があり、その誤差は 1 か月で数...

Mysqlは実行中のトランザクションを照会し、ロックを待機する方法

navicatを使用してテストと学習を行います。まず、 set autocommit = 0;を使用...

Linux CentOS でスケジュールされたバックアップ タスクを設定する方法

実装準備 # ファイルパスをバックアップする必要があります: /opt/apollo/logs/ac...

Zabbixについて管理者ログインパスワードを忘れた場合、パスワードをリセットする

Zabbix 管理者ログイン パスワードのリセットに関する問題は次のとおりです。 1. 問題の説明:...

Nginx の動的および静的分離実装ケースのコード分析

静的と動的の分離動的リクエストと静的リクエストはミドルウェアを通じて分離され、不要なリクエストの消費...

CSS でのフィルタープロパティの使用に関する詳細な説明

フィルター属性は要素の視覚効果を定義しますぼかし画像にガウスぼかしを適用します。 「半径」の値は、ガ...

nginxで静的リソースを公開する方法

ステップ準備した静的リソースファイルを指定されたフォルダに配置しますnginx 設定ファイルを変更す...

HTMLウェブページテーブル構造化マークアップの応用に関する簡単な説明

Web テーブルの構造マークアップについて説明する前に、いくつかの画像を見てみましょう。 HTML ...

CSS 属性値正規マッチングセレクターの使い方 (ヒント)

属性値の正規一致セレクターには 3 つの種類があります。 [属性^="値"] [...