今日は簡単な3Dルービックキューブを作ってみましょう まずはレンダリングを見てみましょう!これを学んだ後、インターネット上のいくつかの3Dフォトアルバムを使用できるようになります 1.まずHTMLコードを準備しましょう <!DOCTYPE html> <html lang="ja"> <ヘッド> <title>3D ルービック キューブ</title> <メタ文字セット="UTF-8"> </head> <本文> <div class="top"></div> <!--トップ--> <div class="bottom"></div> <!--次へ--> <div class="left"></div> <!--左--> <div class="right"></div> <!--右--> <div class="after"></div> <!--後--> <div class="before"></div> <!--前--> </本文> </html> さて、HTML コードの準備ができました。まず、3D 思考を身に付けて、脳内でルービック キューブがどのような形をしているかを想像する必要があります。6 つの面で構成されているのではないですか? 2. CSSスタイルを追加する *{ margin:0; /* デフォルトのスタイルは余白を削除します*/ パディング:0; } div{ /*div 一般的なスタイル設定の高さと幅*/ 幅: 300ピクセル; 高さ: 300px; 不透明度:0.5; /*透明度*/ } .top{ /* クラス名で色を設定します。以下はすべて設定されている色です*/ 背景色:茶色; } 。底{ 背景色:青紫; } 。左{ 背景色:ブランチダルモンド; } 。右{ 背景色:cadetblue; } 。後{ 背景色:チョコレート; } 。前に{ 背景色:シアン; } さて、この時点で基礎は築かれており、建物の建設を開始できます。 これが、皆さんが目にする効果です 2. divを重ねる div{ 幅: 300ピクセル; 高さ: 300px; position: absolute; /*divの一般的なスタイルに絶対位置を追加します*/ } body{ /*次の手順は、すべてのdivを画面の中央に配置することです*/ 高さ:100vh; 幅:100vw; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 } これでこの効果が見えました。明らかに 6 つの四角形がありますが、なぜ 1 つしかないのでしょうか。実はそうではありません。他の div がこの div の後ろにあり、前面の div が視界を遮っているため、この div が見えないのです。 3. 3D空間を開く 体{ transform-style: preserve-3d; /*3D 空間を有効にするにはこのコードのみが必要です*/ 高さ:100vh; 幅:100vw; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 } divをまとめる 。トップ{ 背景色:茶色; transform:rotateX(90deg) translateZ(150px); /*まず回転してからオフセット*/ } 。底{ 背景色:青紫; 変換:回転X(-90度) 移動Z(150ピクセル); } 。左{ 背景色:ブランチダルモンド; 変換:Y軸を回転(-90度)、Z軸を移動(150ピクセル)。 } 。右{ 背景色:cadetblue; 変換:Y軸を90度回転、Z軸を150ピクセル移動します。 } 。後{ 背景色:チョコレート; 変換:Y軸を180度回転、Z軸を150ピクセル移動します。 } 。前に{ 背景色:シアン; 変換:Y軸を回転(0度)、Z軸を移動(150ピクセル)。 } 表示されるのはこのように見えるはずです。実際、ルービック キューブの組み立ては完了していますが、ルービック キューブは平らに置かれていて見えません。そのため、回転させるアニメーションを作成します。 4. アニメーションの回転 <!DOCTYPE html> <html lang="ja"> <ヘッド> <title>3D ルービック キューブ</title> <メタ文字セット="UTF-8"> <スタイル タイプ="text/css"> *{ マージン:0; /* デフォルトのスタイルでは余白が削除されます*/ パディング:0; } div{ 幅: 300ピクセル; 高さ: 300px; 位置: 絶対; 不透明度: 0.5; テキスト配置: 中央; 行の高さ: 300px; } 体{ 変換スタイル: 3D を保持します。 高さ:100vh; アニメーション: fram1 10s イーズ; /*参照アニメーション*/ 幅:100vw; ディスプレイ: フレックス; コンテンツの中央揃え: 中央; アイテムの位置を中央揃えにします。 } 。トップ{ 背景色:茶色; 変換:回転X(90度) 移動Z(150ピクセル); } 。底{ 背景色:青紫; 変換:回転X(-90度) 移動Z(150ピクセル); } 。左{ 背景色:ブランチダルモンド; 変換:Y軸を回転(-90度)、Z軸を移動(150ピクセル)。 } 。右{ 背景色:cadetblue; 変換:Y軸を90度回転、Z軸を150ピクセル移動します。 } 。後{ 背景色:チョコレート; 変換:Y軸を180度回転、Z軸を150ピクセル移動します。 } 。前に{ 背景色:シアン; 変換:Y軸を回転(0度)、Z軸を移動(150ピクセル)。 } @keyframes fram1{ /* アニメーションの回転 X 軸と Y 軸 */ 0%,100%{ 変換: rotateY(0deg) rotateX(0deg); } 50%{ 変換: rotateY(180deg)、rotateX(180deg); } } </スタイル> </head> <body> <!-- 視覚的にわかりやすくするためにテキストを追加します --> <div class="top">1</div> <div class="bottom">2</div> <div class="left">3</div> <div class="right">4</div> <div class="after">5</div> <div class="before">6</div> </本文> </html> すべてのコードはここにあります。私はあなたと一緒にそれを完成させました。3D フォト アルバムを作成する場合は、div に背景画像を追加し、 V. 結論 詳細についてお話ししましょう!もちろん、これが一番大事なことでもあるので、ぜひご覧になってください。これまで見てきたのは、スプライシング プロセスのコードだけです。まず、 簡単に言うと、右に曲がって前進したときに到達する場所と、前進してから右に曲がったときに到達する場所は異なります。これが原理です。理解してしまえば、まだ始めたばかりの人でも、3D で楽しめることはたくさんあります。ゆっくりと探索するのを待っています。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 |
<<: HTML で Flash を読み込む方法 (2 つの実装方法)
この記事では、MySQL 8.0.11 MSIバージョンのインストールと設定のチュートリアルを参考ま...
1. 概要Promise オブジェクトは、ES6 で提案された非同期プログラミングの仕様です。非同期...
TOP 観察: IO 待機に占められる CPU 時間の割合。30% を超えると、IO の負荷が高くな...
当社には、外部ネットワークからの干渉を受けることが多いサーバーが多数あります。侵入者はポート 338...
このソリューションの利点はシンプルさと使いやすさですが、欠点はダウンタイムが長くなることです。 した...
序文インデックスの選択はオプティマイザ段階の作業であることはわかっていますが、オプティマイザは万能で...
目次1. はじめに2. データベースをバックアップする3. オリジナルのMysqlをアンインストール...
Linux へのリモート デスクトップ接続といえば、まず VNC の使用を思い浮かべるかもしれません...
Count(*) または Count(1) または Count([column]) は、おそらく S...
<br /> この記事は allwebdesignresources.com から Ra...
問題:あるサーバー上の PHP プログラムは、localhost アドレス経由でデータベースに接続で...
目次1. scrapy_splash とは何ですか? 2. scrapy_splashの役割3. s...
mysql の権限とインデックスmysql の最高権限ユーザーは root です。 CREATE U...
この記事では、参考までに、Vue の具体的なコードで簡単な計算機を実装する方法を紹介します。具体的な...
HTML で余分なテキストを省略記号として表示したい場合は、いくつかの方法があります。 1行テキスト...