溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

CSS3實(shí)現(xiàn)2D轉(zhuǎn)換的方法

發(fā)布時(shí)間:2020-08-31 13:38:18 來(lái)源:億速云 閱讀:105 作者:小新 欄目:web開(kāi)發(fā)

CSS3實(shí)現(xiàn)2D轉(zhuǎn)換的方法?這個(gè)問(wèn)題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見(jiàn)到的。希望通過(guò)這個(gè)問(wèn)題能讓你收獲頗深。下面是小編給大家?guī)?lái)的參考內(nèi)容,讓我們一起來(lái)看看吧!

transform

參考W3手冊(cè)

transform 屬性向元素應(yīng)用從2D 或3D轉(zhuǎn)換。該屬性允許我們對(duì)元素進(jìn)行旋轉(zhuǎn)、縮放、移動(dòng)或者傾斜。

  • 1、格式:

transform: none|transform-functions;
  • 1、常用取值:

    • 1)、旋轉(zhuǎn) rotate

    transform: rotate(45deg);/*其中deg是單位, 代表多少度*/
    • 2)、平移 translate

    transform: translate(100px, 0px);  /*第一個(gè)參數(shù):水平方向第二個(gè)參數(shù):垂直方向*/
    • 3)、縮放 scale

    transform: scale(1.5);
    /*transform: scale(0.5, 0.5);*/
    
    /*
    第一個(gè)參數(shù):水平方向
    第二個(gè)參數(shù):垂直方向
    注意點(diǎn):
    如果取值是1, 代表不變
    如果取值大于1, 代表需要放大
    如果取值小于1, 代表需要縮小
    如果水平和垂直縮放都一樣, 那么可以簡(jiǎn)寫(xiě)為一個(gè)參數(shù)
    */
    • 4)、綜合轉(zhuǎn)換連寫(xiě)格式

    transform: rotate(45deg) translate(100px, 0px) scale(1.5, 1.5);
    /*
    注意點(diǎn):
    1.如果需要進(jìn)行多個(gè)轉(zhuǎn)換, 那么用空格隔開(kāi)
    2.2D的轉(zhuǎn)換模塊會(huì)修改元素的坐標(biāo)系, 所以旋轉(zhuǎn)之后再平移就不是水平平移的
    */

默認(rèn)情況下所有元素都是圍繞Z軸進(jìn)行旋轉(zhuǎn),如果想圍繞哪個(gè)軸旋轉(zhuǎn),那么只需要在rotate后面加上哪個(gè)軸即可。如:

transform: rotateZ(45deg);

transform: rotateX(45deg);

transform: rotateY(45deg);

transform-origin

transform-origin 屬性用于改變被轉(zhuǎn)換元素的位置

2D轉(zhuǎn)換元素能夠改變?cè)氐腦和Y軸。3D轉(zhuǎn)換元素還能改變其Z軸

  • 1、格式:

transform-origin: left top;
  • 2、取值:

/*具體像素*/
transform-origin: 200px 0px;
/*百分比*/
transform-origin: 50% 50%;
/*特殊關(guān)鍵字*/
transform-origin: left top;

默認(rèn)情況下所有的元素都是以自己的中心點(diǎn)作為參考來(lái)旋轉(zhuǎn)的, 我們可以通過(guò)形變中心點(diǎn)屬性來(lái)修改它的參考點(diǎn)

perspective

perspective 屬性定義3D元素距視圖的距離,以像素計(jì),該屬性允許改變3D元素查看3D元素的視圖

當(dāng)為元素定義perspective屬性時(shí),其子元素會(huì)獲得透視效果,而不是元素本身

  • 格式:

perspective: number|none;
/*
number  元素距離視圖的距離,以像素計(jì)
none    默認(rèn)值。與0相同。不設(shè)置透視
*/
  • 注意:perspective 屬性只能影響3D轉(zhuǎn)換元素

綜合實(shí)例一

2D模塊轉(zhuǎn)換撲克練習(xí)

<!DOCTYPE html><html lang="zh-CN"><head>
    <meta charset="UTF-8">
    <title>2D模塊轉(zhuǎn)換撲克練習(xí)</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        p{
            width: 310px;
            height: 418px;
            border: 1px solid gold;
            margin: 100px auto;
            background-color: #afcced;
            perspective: 400px;
        }
        p img{
            transition: transform 1.2s;
            transform-origin: center bottom;
        }
        p:hover img{
            transform: rotateX(80deg);
        }
    </style></head><body><p>
    <img src="img/pk.png" alt=""></p></body></html>

CSS3實(shí)現(xiàn)2D轉(zhuǎn)換的方法

綜合實(shí)例二(相片墻)

2D轉(zhuǎn)換模塊-照片墻

<!DOCTYPE html><html lang="zh-CN"><head>
    <meta charset="UTF-8">
    <title>2D轉(zhuǎn)換模塊-照片墻</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        ul{
            height: 400px;
            margin: 100px auto;
            background-color: cornflowerblue;
            text-align: center;
            border: 1px solid #000;
        }
        ul li{
            list-style: none;
            margin-top: 100px;
            height: 200px;
            width: 150px;
            display: inline-block;
            background-color: red;
            border: 5px solid white;
            transition: transform 1s;
            box-shadow: 2px 2px 2px;
            position: relative;
        }
        ul li:nth-child(1){
            transform: rotate(30deg);
        }
        ul li:nth-child(2){
            transform: rotate(-40deg);
        }
        ul li:nth-child(3){
            transform: rotate(15deg);
        }
        ul li:nth-child(4){
            transform: rotate(60deg);
        }
        ul li:nth-child(5){
            transform: rotate(-25deg);
        }
        ul li:nth-child(6){
            transform: rotate(10deg);
        }
        ul li img{
            width: 150px;
            height: 200px;
        }
        ul li:hover {
            transform: scale(1.6);
            z-index: 999;
        }
    </style></head><body><ul>
    <li><img src="img/1.jpg" alt=""></li>
    <li><img src="img/2.jpg" alt=""></li>
    <li><img src="img/3.jpg" alt=""></li>
    <li><img src="img/4.jpg" alt=""></li>
    <li><img src="img/5.jpg" alt=""></li>
    <li><img src="img/6.jpg" alt=""></li></ul></body></html>

CSS3實(shí)現(xiàn)2D轉(zhuǎn)換的方法

感謝各位的閱讀!看完上述內(nèi)容,你們對(duì)CSS3實(shí)現(xiàn)2D轉(zhuǎn)換的方法大概了解了嗎?希望文章內(nèi)容對(duì)大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI