ホームページ ウェブフロントエンド H5 チュートリアル css3 3d 変換 css3 を使用して動的な 3d 立方体を作成する (html5 演習)_html5 チュートリアル スキル

css3 3d 変換 css3 を使用して動的な 3d 立方体を作成する (html5 演習)_html5 チュートリアル スキル

May 16, 2016 pm 03:50 PM
transform

今日の講座では、css3を使って3D立方体を作成する方法を紹介します。以下のリンクから実際の効果を閲覧し、上下左右のキーを操作して立方体の反転効果を実現できます。
デモアドレス: http://www.jb51.net/jiaoben/70022.html
作り方から始めましょう。
html:

コードをコピーします
コードは次のとおりです:



>

上、下、左、右

ロレム イプサム

>

回転 3D キューブ

その他のコンテンツ
< /div>




上記の HTML では、クラスを使用して立方体の 6 つの面を表します。 1 から 6 までの名前がそれらを区別します。外側には cube と Experiment の ID を持つ 2 つのコンテナーが含まれています。どちらかのレイヤーがないと 3D 効果を生成できません。
実験はレンズの役割を果たします。内部要素に 3D 効果が表示されるように、そこにフォーカスを設定します。
perspective 属性は、z 軸平面の深さを定義し、平面の上下の要素の相対的なサイズも定義します。一般に、遠近値が小さいほどオブジェクトは大きくなり、遠近感値が大きいほどオブジェクトは小さくなり、遠ざかります。 http://www.webkit.org/blog-files/3d-transforms/perspective-by-example.html で効果を確認できます。
perspective-origin 属性は、パースペクティブの原点を定義します。

css
:




コードをコピー

コードは次のとおりです:
#experiment { -webkit-perspective: 800; -o-perspective: 800; -webkit -perspective-origin: 50% 200px;
-moz-perspective-origin: 50% 200px; >}

cube によって設定されるプロパティには固定の幅と高さが含まれ、位置は相対的に設定されます。立方体の要素が限られた領域内で 3D アニメーションを実行できるようにするには、固定の高さと幅が必要です。高さと幅を 100% に設定すると、立方体の要素がページ全体で移動します。
トランジションはアニメーション関連の属性を設定するために使用されます。 transform-style:preserve-3d; 立方体のすべての要素が全体として 3D 効果を生成します。
詳細については、http://www.zhangxinxu.com/wordpress/2012/09/css3-3d-transform-perspective-animate-transition/ をご覧ください。
css:





コードをコピー

コードは次のとおりです:


#キューブ {
位置: 相対;
マージン: 100 ピクセル;
高さ: 400 ピクセル;
-webkit-transform 2s 線形; moz-transition : -moz-transform 2s 線形; -o-transform 2s 線形; transition: 2 秒線形を変換します。 🎜>-moz-transform-style:preserve-3d; -o-transform-style:preserve-3d; transform-style:preserve-3d; >次へ CSSプロパティを立方体の6つの面に均一に設定します。
css
:





コードをコピー


コードは次のとおりです:


.face {
位置: 絶対;
幅: 360 ピクセル;
背景色: rgba(50, 50, 50) , 0.7) ;
}

次に、6 つの面の 3D 関連属性を設定し、rotateX またはrotateY を使用して立方体表面の方向を反転し、translateZ を使用して立方体表面を移動します。 3D空間。
css
:
コードをコピー
コードは次のとおりです:

#cube .one {
-webkit-transform: 回転X(90度) 変換Z(200ピクセル);
-moz-transform: 回転X(90度) 変換Z(200ピクセル);
-o-transform: 回転X(90度) 変換Z(200ピクセル);
変換: 回転X(90度) 変換Z(200ピクセル);
}
#cube .two {
-webkit-transform:translateZ(200px);
-moz-transform:translateZ(200px);
-o-transform:translateZ(200px);
変換:translateZ(200px);
}
#cube .three {
-webkit-transform: 回転 Y(90 度) 変換 Z(200 ピクセル);
-moz-transform: 回転 Y(90 度) 変換 Z(200 ピクセル);
-o-transform: 回転 Y(90 度) 変換 Z(200 ピクセル);
変換: 回転 Y(90 度) 変換 Z(200 ピクセル);
}
#cube .four {
-webkit-transform: 回転 Y(180 度) 変換 Z(200 ピクセル);
-moz-transform: 回転 Y(180 度) 変換 Z(200 ピクセル);
-o-transform: 回転 Y(180 度) 変換 Z(200 ピクセル);
変換: 回転 Y(180 度) 変換 Z(200 ピクセル);
}
#cube .five {
-webkit-transform: 回転 Y(-90 度) 変換 Z(200 ピクセル);
-moz-transform: 回転 Y(-90 度) 変換 Z(200 ピクセル);
-o-transform: 回転 Y(-90 度) 変換 Z(200 ピクセル);
変換: 回転 Y(-90 度) 変換 Z(200 ピクセル);
}
#cube .six {
-webkit-transform: 回転X(-90度) 変換Z(200ピクセル);
-moz-transform: 回転X(-90度) 変換Z(200ピクセル);
-o-transform: 回転X(-90度) 変換Z(200ピクセル);
変換: 回転X(-90度) 変換Z(200ピクセル);
}

最後に行われるのは、面でのキーダウン イベントであり、これは、上下左右にキーを押したときに、立方体の変換効果が実現されます。 >


复制代码代码如下:
var xAngle = 0, yAngle = 0;
document.addEventListener('keydown', function(e)
{
switch(e.keyCode)
{
case 37: // left
yAngle -= 90;
ブレーク;
ケース 38: // 上
xAngle = 90;
ケース 39: // 右
ブレーク; 40: // ダウン
xAngle -= 90;
$('cube').style.webkitTransform = "rotateX(" xAngle "deg) "度)";
}, false);


プロセスがここに到着し、次に大家がハンド練習を開始できます。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

ユーザー入力にHTML5フォームを使用する方法は? ユーザー入力にHTML5フォームを使用する方法は? Mar 10, 2025 pm 02:59 PM

この記事では、HTML5フォームを作成および検証する方法について説明します。 &lt; form&gt;の詳細要素、入力タイプ(テキスト、電子メール、番号など)、および属性(必須、パターン、MIN、最大)。 HTML5の利点は、古い方法よりも形成されます

HTML5 Webサイトにオーディオを追加する方法は? HTML5 Webサイトにオーディオを追加する方法は? Mar 10, 2025 pm 03:01 PM

この記事では、&lt; audio&gt;を使用してHTML5にオーディオを埋め込む方法について説明します。フォーマット選択のベストプラクティス(MP3、OGG Vorbis)、ファイルの最適化、および再生のためのJavaScriptコントロールを含む要素。 複数のオーディオfを使用して強調しています

ViewPortメタタグを使用して、モバイルデバイスのページスケーリングを制御するにはどうすればよいですか? ViewPortメタタグを使用して、モバイルデバイスのページスケーリングを制御するにはどうすればよいですか? Mar 13, 2025 pm 08:00 PM

この記事では、ビューポートメタタグを使用してモバイルデバイスのページスケーリングを制御し、最適な応答性とパフォーマンスのために幅や初期スケールなどの設定に焦点を当てています。

Geolocation APIでユーザーの場所のプライバシーと許可を処理するにはどうすればよいですか? Geolocation APIでユーザーの場所のプライバシーと許可を処理するにはどうすればよいですか? Mar 18, 2025 pm 02:16 PM

この記事では、Geolocation APIを使用してユーザーの場所のプライバシーと許可を管理し、アクセス許可を要求するためのベストプラクティスを強調し、データセキュリティを確保し、プライバシー法を遵守することについて説明します。

HTML5ページの可視性APIを使用して、ページが表示されたときに検出するにはどうすればよいですか? HTML5ページの可視性APIを使用して、ページが表示されたときに検出するにはどうすればよいですか? Mar 13, 2025 pm 07:51 PM

この記事では、HTML5ページの可視性APIを使用して、ページの可視性を検出し、ユーザーエクスペリエンスを向上させ、リソースの使用量を最適化します。重要な側面には、メディアの一時停止、CPU負荷の削減、視認性の変化に基づいて分析の管理が含まれます。

HTML5とJavaScriptでインタラクティブなゲームを作成する方法は? HTML5とJavaScriptでインタラクティブなゲームを作成する方法は? Mar 10, 2025 pm 06:34 PM

この記事では、JavaScriptを使用してインタラクティブなHTML5ゲームの作成を詳述しています。 ゲームデザイン、HTML構造、CSSスタイリング、JavaScriptロジック(イベント処理とアニメーションを含む)、およびオーディオ統合をカバーしています。 必須JavaScriptライブラリ(Phaser、PI

インタラクティブなユーザーインターフェイスにHTML5ドラッグアンドドロップAPIを使用するにはどうすればよいですか? インタラクティブなユーザーインターフェイスにHTML5ドラッグアンドドロップAPIを使用するにはどうすればよいですか? Mar 18, 2025 pm 02:17 PM

この記事では、HTML5ドラッグアンドドロップAPIを使用してインタラクティブなユーザーインターフェイスを作成し、要素をドラッグ可能にし、キーイベントを処理し、カスタムフィードバックを使用してユーザーエクスペリエンスを強化する手順を作成する方法について説明します。また、aへの一般的な落とし穴についても説明します

クライアントとサーバー間の双方向通信にHTML5 WebSockets APIを使用するにはどうすればよいですか? クライアントとサーバー間の双方向通信にHTML5 WebSockets APIを使用するにはどうすればよいですか? Mar 12, 2025 pm 03:20 PM

この記事では、リアルタイムの双方向のクライアントサーバー通信のために、HTML5 WebSockets APIについて説明します。 クライアントサイド(JavaScript)とサーバー側(Python/Flask)の実装を詳述し、スケーラビリティ、状態管理、などの課題に対処します。

See all articles