3d変換(回転・傾き・スケール・平行移動)
基礎知識
パースペクティブ(視距離、被写界深度)パースペクティブ原点(視点)
transfrom
(1)座標x y z
(2)変換ベース点位置変換-原点
(3)変換スタイル:保持-3d
3D変換(3D変形)(回転・傾き・スケール・変換)
基礎知識
パース(視距離、奥行き)フィールドの) 視点-原点(視点)
transfrom
(1) 座標 x y z
(2) 変換基点位置transform-origin
(3)transfrom-style:preserve-3d
比較的単純な座標の y 軸回転が使用されています
<p class="kj" id="kj"> <p class="mian"><img src="img/p1.jpg" alt=""></p> <p class="mian"><img src="img/p2.jpg" alt=""></p> <p class="mian"><img src="img/p3.jpg" alt=""></p> <p class="mian"><img src="img/p4.jpg" alt=""></p> <p class="mian"><img src="img/p5.jpg" alt=""></p> <p class="mian"><img src="img/p6.jpg" alt=""></p> <p class="mian"><img src="img/p7.jpg" alt=""></p> <p class="mian"><img src="img/p8.jpg" alt=""></p> <p class="mian"><img src="img/p9.jpg" alt=""></p> </p>
まず、9 つの画像を保持するために 9 つのボックスを構築する必要があります。これは簡単に理解できます。
body{ background: #6daf39;(背景加了个颜色 主要是好看) } .xj{ perspective:600px;(这是井深) } .kj{ transition: 1s;(运动时间) transform-style:preserve-3d;(实现3d效果 当然这是非常重的) width:200px; height: 300px; margin:80px auto; position: relative; transform: rotateY(0deg) rotateX(0deg) translateZ(-275px); transform-origin: center center -275px; } .mian{ position:absolute; font-size: 50px; color:#fff; text-align: center; line-height: 300px; } .mian:nth-child(1){ width:200px; height: 300px; background: #ff2223; transform: rotateY(0deg)translateZ(275px); } .mian:nth-child(2){ width:200px; height: 300px; background: #ff2223; transform: rotateY(40deg)translateZ(275px); } .mian:nth-child(3){ width:200px; height: 300px; background: #ff2223; transform: rotateY(80deg)translateZ(275px); } .mian:nth-child(4){ width:200px; height: 300px; background: #ff2223; transform: rotateY(120deg)translateZ(275px); } .mian:nth-child(5){ width:200px; height: 300px; background: #ff2223; transform: rotateY(160deg)translateZ(275px); } .mian:nth-child(6){ width:200px; height: 300px; background: #ff2223; transform: rotateY(200deg)translateZ(275px); } .mian:nth-child(7){ width:200px; height: 300px; background: #ff2223; transform: rotateY(240deg)translateZ(275px); } .mian:nth-child(8){ width:200px; height: 300px; background: #ff2223; transform: rotateY(280deg)translateZ(275px); } .mian:nth-child(9){ width:200px; height: 300px; background: #ff2223; transform: rotateY(320deg)translateZ(275px); }
cssのコードは非常に簡単です;
kj.onclick=function () { cishu++; var jiaodu=40*cishu; kj.style.transform="rotateY("+jiaodu+"deg)translateZ(-275px)" }
のコード(kj)は3D空間です。kjをクリックすることが効果である場合、メソッドまたはがある必要があります。ステップ ;
3D 空間スタイルの回転 Y (これは上下の軸の回転です) TranslationZ (Z は 3D 3 次元のキャラクターの軸です。軸の位置を見つけるために 3D 空間を 275px 戻します)
CSS 3D の基礎知識と関連記事は、PHP 中国語 Web サイトに注目してください。