立方體動畫製作------方法二

方法二:


步驟一:

一個大盒子包着6個小盒子;

步驟二:

大盒子的寬高和小盒子的一樣;

步驟三:

子絕父相,讓6個小盒子脫離文檔流,疊在一起;

步驟四:

給6個小盒子設置不同背景顏色;

步驟五:

先做上下兩個面,分別沿Y軸的上下各自平移寬度的一半,再繼續圍繞X軸各自旋轉90deg。

步驟六:

先做左右兩個面,分別沿X軸的左右各自平移寬度的一半,再繼續圍繞Y軸各自旋轉90deg。

步驟七:

先做前後兩個面,分別沿Z軸的前後各自平移寬度的一半。

步驟八:

給父元素加transform-style: preserve-3d;轉成3d.

步驟九:

讓父元素旋轉,查看效果, transform:rotateY(30deg) rotateX(30deg); 


HTML和CSS樣式:


<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>透明3D立體正方體</title>
        <style type="text/css">
            body{
                background: #000;
            }


            .box{
                width: 200px;
                height: 200px;
                position: relative;
                margin:200px auto;
                transform-style: preserve-3d;
                transform:rotateY(0deg) rotateX(30deg);
               
            }
            p{
                width: 200px;
                height: 200px;
                text-align: center;
                line-height: 200px;
                opacity: 0.5;
                position:absolute;
                left: 0px;
                top: 0px;


            }
            .one{
                background: red;
                -webkit-transform: translateX(100px) rotateY(90deg);
                   -moz-transform: translateX(100px) rotateY(90deg);
                    -ms-transform: translateX(100px) rotateY(90deg);
                     -o-transform: translateX(100px) rotateY(90deg);
                        transform: translateX(100px) rotateY(90deg);
            }
            .two{
                background: blue;
                -webkit-transform: translateX(-100px) rotateY(90deg);
                   -moz-transform: translateX(-100px) rotateY(90deg);
                    -ms-transform: translateX(-100px) rotateY(90deg);
                     -o-transform: translateX(-100px) rotateY(90deg);
                        transform: translateX(-100px) rotateY(90deg);
            }
            .three{
                background: green;
                -webkit-transform: translateY(100px) rotateX(90deg);
                   -moz-transform: translateY(100px) rotateX(90deg);
                    -ms-transform: translateY(100px) rotateX(90deg);
                     -o-transform: translateY(100px) rotateX(90deg);
                        transform: translateY(100px) rotateX(90deg);
            }
            .four{
                background: yellow;
                -webkit-transform: translateY(-100px) rotateX(90deg);
                   -moz-transform: translateY(-100px) rotateX(90deg);
                    -ms-transform: translateY(-100px) rotateX(90deg);
                     -o-transform: translateY(-100px) rotateX(90deg);
                        transform: translateY(-100px) rotateX(90deg);
            }
            .five{
                background: pink;
                -webkit-transform: translateZ(100px);
                   -moz-transform: translateZ(100px);
                    -ms-transform: translateZ(100px);
                     -o-transform: translateZ(100px);
                        transform: translateZ(100px);
            }
            .sex{
                background: orange;
                -webkit-transform: translateZ(-100px);
                   -moz-transform: translateZ(-100px);
                    -ms-transform: translateZ(-100px);
                     -o-transform: translateZ(-100px);
                        transform: translateZ(-100px);
            }
        </style>
    </head>
    <body>
        <div class="box">
            <p class="one">1</p>
            <p class="two">2</p>
            <p class="three">3</p>
            <p class="four">4</p>
            <p class="five">5</p>
            <p class="sex">6</p>
        </div>
    </body>
</html>


發佈了51 篇原創文章 · 獲贊 19 · 訪問量 1萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章