日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

CSS3 制作正方体

發(fā)布時間:2023/12/24 综合教程 41 生活家
生活随笔 收集整理的這篇文章主要介紹了 CSS3 制作正方体 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一、預(yù)備知識

變形屬性

2D變形屬性

transform:他是css3中的變形屬性:
通過transform(變形) 來實現(xiàn)2d 或者3d 轉(zhuǎn)換,其中2d 有,縮放 scale(x, y) ,移動 translate(x, y),旋轉(zhuǎn) rotate(deg),傾斜 skew(deg, deg) ,矩陣matrix() ,3D就是在2D基礎(chǔ)上增加了Z軸,2D屬性仍可以使用。

3D轉(zhuǎn)換屬性

透視(perspective)景深(900-1200 )
電腦顯示屏是一個2D平面,圖像之所以具有立體感(3D效果),其實只是一種視覺呈現(xiàn),通過透視可以實現(xiàn)此目的。
透視可以將一個2D平面,在轉(zhuǎn)換的過程當(dāng)中,呈現(xiàn)3D效果。

3D呈現(xiàn)(transform-style),值為preserve-3d:保留3D空間(本次正方形就是利用此)
形成一個3D空間:( 讓父元素形成3D,讓其子元素在3D空間進行變化 )

backface-visibility:設(shè)置元素背面是否可見

二、步驟:

1、首先設(shè)置一個大盒子包裹住六個div

 <div class="box">
        <div class="con1">1</div>
        <div class="con2">2</div>
        <div class="con3">3</div>
        <div class="con4">4</div>
        <div class="con5">5</div>
        <div class="con6">6</div>
    </div>

2、 讓正方體呈現(xiàn)3D效果

形成一個3D空間:( 讓父元素形成3D,讓其子元素在3D空間進行變化 )

.box{
          300px;
          height:300px;
          position:fixed;
          left:0;right:0;
          top:0;bottom:0;
          margin:auto;
          /* 3D的空間 */
          transform-style: preserve-3d;
          /* 為了方便觀察讓3D舞臺轉(zhuǎn)動角度 */
          transform:rotateX(20deg) rotateY(30deg);
          transition:2s;
      }

3、定位6個面,使其在正方形里面

   .box div{
           300px;
           height:300px;
           text-align: center;
           line-height:300px;
           font-size: 100px;
           font-weight:bolder;
           color:#fff;
           /* 讓6個面全部定位在父元素里面 */
           position:absolute;
           left:0;top:0;
           opacity:0.5; /* 透明 */
           border:2px solid #000;
           }

現(xiàn)在的效果看一下:

4、接下來就要為每個面來進行位移和旋轉(zhuǎn)

 .con1{
            /* 第一個面往前走 */
            background:red;
            transform:translateZ(150px);
        }
        .con2{
            /* 第二個面往后走 */
            background:blue;
            transform:translateZ(-150px) rotateY(180deg); /*rotateY(180deg)  讓正面朝外*/
        }
        .con3{
            /* 先往上位移150px  再繞著X軸轉(zhuǎn)動90deg */
            background:pink;
            transform:translateY(-150px) rotateX(90deg);
        }
        .con4{
            /* 先往下位移150px,再繞著X軸轉(zhuǎn)動90deg */
            background:green;
            transform:translateY(150px) rotateX(-90deg);
        }

        .con5{
            /* 先往左位移150px , 再繞著Y軸轉(zhuǎn)動90deg */
            background:rosybrown;
            transform:translateX(-150px) rotateY(-90deg);
        }
        .con6{
            /* 先往右側(cè)位移150px,再繞著Y軸轉(zhuǎn)動90deg */
            background:#000;
            transform:translateX(150px) rotateY(90deg);
        }

我們再來看下效果就出來了

下面的兩個屬性不是必須加的,為了學(xué)習(xí)必須掌握!!!

5、這里我加了給元素加backface-visibity:hidden;就可使元素背面不可見

.box div{
 /* 使背面不可見! */
       backface-visibility:hidden;
 }

6、最后我們在將開頭提到的“景深”應(yīng)用下

一般我們 都在父元素中加

.box{perspective: 1200px;}

通常的數(shù)值在900-1200之間
如果當(dāng)你的視線距離物體足夠遠的時候,基本上就不會有近大遠小的感覺

對比下,既可以看到效果

總結(jié)

以上是生活随笔為你收集整理的CSS3 制作正方体的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。