CSS3 は 3D キューブの読み込み効果を作成します

CSS3 は 3D キューブの読み込み効果を作成します

簡単な説明

これは CSS3 のクールな 3D キューブのプリロード効果です。この特殊効果は、シンプルな HTML 要素と CSS3 コードを使用して、複数の立方体が連続的に移動するアニメーション効果を構築します。これは、ページの読み込み効果に適しています。

コード分​​析

次のファイルを HTML ファイルにインポートします。

<link rel="スタイルシート" type="text/css" href="css/bootstrap-grid.min.css" />

HTML構造

<div class="demo" style="min-height:350px;">
<div class="コンテナ">
<div class="row">
<div class="col-md-12">
<div class="loader">
<div class="box">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
<div class="box">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
<div class="box">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
<div class="box">
    <div></div>
    <div></div>
    <div></div>
    <div></div>
</div>
</div>
</div>
</div>
</div>
</div>

CSS スタイル

。ローダ{
                    --サイズ: 32px;
                    --期間: 800 ミリ秒;
                    幅: 96px;
                    高さ: 64px;
                    マージン: 50px 自動;
                    変換スタイル: 3D を保持します。
                    変換の原点: 50% 50%;
                    変換: rotateX(60度) rotateZ(45度) rotateY(0度) translateZ(0px);
                    位置: 相対的;
                }
                .loader .box{
                    幅: 32px;
                    高さ: 32px;
                    変換スタイル: 3D を保持します。
                    位置: 絶対;
                    上: 0;
                    左: 0;
                }
                .loader .box:n番目の子(1){
                    変換: translate(100%, 0);
                    アニメーション: box1 800ms 線形無限;
                }
                .loader .box:n番目の子(2){
                    変換: translate(0, 100%);
                    アニメーション: box2 800ms 線形無限;
                }
                .loader .box:n番目の子(3){
                    変換: translate(100%, 100%);
                    アニメーション: box3 800ms 線形無限;
                }
                .loader .box:n番目の子(4){
                    変換: translate(200%, 0);
                    アニメーション: box4 800ms 線形無限;
                }
                .loader .box > div{
                    --translateZ: calc(var(--size) / 2);
                    --rotateY: 0度;
                    --rotateX: 0度;
                    背景: #5c8df6;
                    幅: 100%;
                    高さ: 100%;
                    変換: rotateY(var(--rotateY)) rotateX(var(--rotateX)) translateZ(var(--translateZ));
                    位置: 絶対;
                    上:自動;
                    右: 自動;
                    下部: 自動;
                    左: 自動;
                }
                .loader .box > div:nth-child(1){
                    上: 0;
                    左: 0;
                }
                .loader .box > div:nth-child(2){
                    背景: #145af2;
                    右: 0;
                    --rotateY: 90度;
                }
                .loader .box > div:nth-child(3){
                    背景: #447cf5;
                    --rotateX: -90度;
                }
                .loader .box > div:nth-child(4){
                    背景: #dbe3f4;
                    上: 0;
                    左: 0;
                    --translateZ: calc(var(--size) * 3 * -1);
                }
                @keyframes ボックス1{
                    0%、50%{ 変換: translate(100%、0); }
                    100%{ 変換: 翻訳(200%, 0); }
                }
                @keyframes ボックス2{
                    0%{ 変換: translate(0, 100%); }
                    50%{ 変換: translate(0, 0); }
                    100%{ 変換: translate(100%, 0); }
                }
                @keyframes ボックス3{
                    0%、50%{ 変換: translate(100%、100%); }
                    100%{ 変換: translate(0, 100%); }
                }
                @keyframes ボックス4{
                    0%{ 変換: translate(200%, 0); }
                    50%{ 変換: 翻訳(200%, 100%); }
                    100%{ 変換: 翻訳(100%, 100%); }
                }

上記は、CSS3 を使用して 3D キューブの読み込み効果を作成する方法の詳細です。CSS3 の読み込み効果の詳細については、123WORDPRESS.COM の他の関連記事に注目してください。

<<:  マウスが画像のハイパーリンク上を通過するときに画像のサイズ(幅、高さ)を変更する CSS

>>:  Linux環境でrmによって誤って削除されたファイルを回復する方法

推薦する

CentOS8 で Docker を使用してオープンソース プロジェクト Tcloud をデプロイするチュートリアル

1. Dockerをインストールする1. 仮想マシンに Centos7 をインストールしました。Li...

Nginx操作応答ヘッダー情報の実装

前提条件: ヘッダー情報操作をサポートするには、ngx_http_headers_module モジ...

VUE ユニアプリの条件付きコーディングとページレイアウトに関する簡単な説明

目次条件付きコンパイルページレイアウト要約する条件付きコンパイル条件付きコンパイルでは、特別なコメン...

Web アプリ開発時間を短縮する 10 の時間を節約するヒント (グラフィカル チュートリアル)

今日の開発環境では、速いほど良いです。 「迅速なアプリケーション開発」、「アジャイル ソフトウェア開...

MySQLは遅いSQLを開始し、原因を分析します

ステップ1. MySQLスロークエリを有効にする方法1: 設定ファイルを変更するWindows: W...

Linux で rpm パッケージを見つけるために CD をマウントする方法

前面に書かれたLinux を使用する際にソフトウェアをインストールする必要がある場合があります。もち...

dockerコンテナにviコマンドをインストールする簡単な操作

docker コンテナを使用する場合、vim がインストールされていないことがあり、vim コマンド...

MySQL マスタースレーブレプリケーションの役割と動作原理の詳細な説明

1. マスタースレーブレプリケーションとは何ですか?マスタースレーブレプリケーションは、スレーブデー...

Discuz! フォーラムに設定オプションを追加する方法

Discuz! フォーラムにはバックグラウンドで多くの設定オプションがあり、これらの設定オプションを...

Vueプロジェクトを大画面に適応させる方法の例

レムの簡単な分析まず、remはCSS単位です。pxの固定ピクセル単位と比較すると、remはより柔軟性...

ハイパーリンクを表示して開く方法

<br />インターネット上の無数の情報は基本的に HTML ドキュメントで構成されてお...

MySQL で最大接続数を設定するためのヒントのまとめ

方法1: コマンドラインの変更次の図に示すように、MySQL コンソールを開いて「set GLOBA...

Dockerのオンラインおよびオフラインインストールと一般的なコマンド操作

1. テスト環境名前バージョンセント7.6ドッカー18.09.06 2. オンラインインストールここ...

プレーヤー機能を実現するためのvue + element uiのサンプルコード

効果画像のない表示は単なる空虚な言葉です。 1. オーディオをベースにし、elementUI と組み...

ECMAScript6 におけるマップマッピングの基本概念と一般的な方法

目次マッピングとは何かオブジェクトとマップの違いマップの共通メソッド宣言と初期化割り当てセットキー値...