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によって誤って削除されたファイルを回復する方法

推薦する

MySQLの自動増分主キーIDはこのように処理されません

MySQLの自動増分主キーIDは段階的に増加しません1. はじめにMySQL データベースにデータを...

JavaScript ベースの Web 計算機の実装

この記事では、ウェブ計算機のマインスイーパゲームを実装するためのJavaScriptの具体的なコード...

Reactを使用する際の7つの落とし穴のまとめ

目次1. コンポーネントの肥大化2. 状態を直接変更する3. プロパティは数値を渡す必要があるが文字...

XHTML CSSを使用して正式なブログを書く

ブログの正式名称は「Web log」で、中国語で「ネットワークログ」を意味します。後にブログに短縮さ...

WeChatアプレットにナンバープレート入力機能を実装

目次序文背景大きな推測パターンを見つける構造とスタイルコンポーネントの実装パラメータキーボードの種類...

不規則な絵の滝の流れ原理の分析と応用

プロジェクトで発生した不規則な絵画壁のレイアウト問題は、次のように分析されます。 1.img dis...

バックアップ データをインポートするときに innodb_index_stats がエラーを報告する場合の主キー競合の解決方法

障害の説明percona5.6、mysqldump フルバックアップ、バックアップデータのインポート...

MySQL インデックスの原理と最適化の詳細な説明

序文この記事は Meituan の大物によって書かれました。とても素晴らしいので、皆さんと共有したい...

MySQL の replace と replace into の詳細な例 into_Mysql

MySQL の replace と replace into はどちらも頻繁に使用される関数です。...

CSS3で実装されたグラデーションスライド効果

成果を達成する コードhtml <div class="css-slideshow&...

Msyql トランザクション分離について知っておくべきこと

トランザクションとは何ですか?トランザクションは、データベース管理システムの実行プロセスにおける論理...

NginxはIP経由の直接アクセスを禁止し、カスタム500ページにリダイレクトします

設定ファイルに直接 サーバー{ listen 80 default; # IPへの直接アクセスを禁止...

HTML割引価格計算の実装原理とスクリプトコード

コードをコピーコードは次のとおりです。 <!DOCTYPE HTML PUBLIC "...

Reactでのこのリファレンスの詳細な説明

目次原因:以下を実行します: 1. コンストラクター2.レンダリング機能3.bind関数とarrow...