青草久久影院-青草久久伊人-青草久久久-青草久久精品亚洲综合专区-SM双性精跪趴灌憋尿调教H-SM脚奴调教丨踩踏贱奴

17站長網

17站長網 首頁 編程教程 CSS3教程 查看內容

transform 3D 空間轉換

transform 3D 空間轉換

transform 這個屬性的強大之處在于它可以把一個二維的空間轉化成一個三維的空間,給視覺設計師更多的發揮空間,也給用戶帶來更好的視覺體驗。

1. 官方定義

transform 屬性向元素應用 3D 轉換。屬性允許我們對元素進行旋轉、縮放、移動或傾斜。

2. 解釋

當給元素使用 transform 之后,它就可以在它原來所在的位置變成一個向任意空間變換的元素,這里可以通過在 Z 軸上的設置,讓他在空間上呈現 3D 效果。

3. 語法

transform: none|transform-functions;

3D 空間坐標軸

坐標軸

坐標軸

值說明

描述
translate3d(x,y,z)定義 3D 轉換。
translateX(x)定義轉換,只是用 X 軸的值。
translateY(y)定義轉換,只是用 Y 軸的值。
translateZ(z)定義 3D 轉換,只是用 Z 軸的值。
scale3d(x,y,z)定義 3D 縮放轉換。
scaleX(x)通過設置 X 軸的值來定義縮放轉換。
scaleY(y)通過設置 Y 軸的值來定義縮放轉換。
scaleZ(z)通過設置 Z 軸的值來定義 3D 縮放轉換。
rotate3d(x,y,z,angle)定義 3D 旋轉。
rotateX(angle)定義沿著 X 軸的 3D 旋轉。
rotateY(angle)定義沿著 Y 軸的 3D 旋轉。
rotateZ(angle)定義沿著 Z 軸的 3D 旋轉。
transform-style在空間內如何呈現 flat 2D 呈現, preserve-3d 3D 呈現

我們在 transform2D 中已經對平面屬性做了詳細的介紹,本章節主要是其 3D 屬性,這些屬性的使用需要在父級設置 perspective 和 transform-style

讓父級有了透視效果以及設置父級在內部空間的呈現方式。

4. 兼容性

IEEdgeFirefoxChromeSafariOperaiosandroid
9+12+28+4+6.1+12.1+7+4.4

5. 實例

通用 html :

<div class="common demo">transfrom3d</div>
<div class="common demo-3d">transfrom3d</div>

通用 style :

body{
    perspective: px;
}
.common{
    width:px;
    height:px;
    text-align: center;
    line-height: px;
    background:#f2f2f2;
    border:px solid #ccc;        
    position: absolute;     
    top: ;
    left: ;
    
}
.demo{
    z-index: ;   
    opacity: ;       
    background: red;     
}
  1. demo-3d 在 z 坐標軸向內延伸 100px。

.demo-3d{
    transform:translated( , ,-px);
}

效果圖


編程之家


demo 在 z 坐標軸向內延伸 100px ,效果圖

說明: 紅色背景是 demo-3d 原來的位置,我們通過圖片看到它的表現是水平向右移動且縮小了,其實他是進行了 3D 空間的移動。

  1. demo-3d 在 z 軸空間上縮放。

.demo-3d{
    transform:scaled( , ,);
}

效果圖


編程之家


demo 在 z 軸空間上縮放效果圖

說明: scale3d 這個屬性可以拆成 scaleX() 、scaleY() 、 scaleZ() 。我們發現 scaleZ() 在 3D 空間變化上,它的區間 0~1 是不起作用的,只有 0 代表縮小到 0(消失), 1 (不變)。

  1. demo-3d 在 z 軸上旋轉。

.demo-3d{
    transform: rotated(,,,deg);
}

效果圖


編程之家


demo-3d 在 z 軸上旋轉效果圖

說明: 不推薦使用 rotate3d() 這個屬性,因為它只能通過 0 或 1 去選擇是否需要旋轉,第 4 個參數給 1 個旋轉角度,這種方式很不靈活,不過它的特性就是可以同時控制 x,y,z 方向上的旋轉角度。

其實我們從 1~3 這 3 個例子中看到只設定了其中一項,接下來我們全方位的變化。

  1. 在 x,y,z 上應用 translate3d 和 rotateZ

.demo-3d{
    transform:translated(px  ,px ,-px) rotateZ(deg);
}

效果圖:


編程之家


在 x,y,z 上應用 translate3d 和 rotateZ 效果圖

5.寫一個墻角效果

<div class="cude">   
        <div class="common left">left</div>         
        <div class="common right">right</div>
        <div class="common bottom">bottom</div>
</div>
.cude {  
    perspective: px;
    width:px;   
    height:px;   
    position: relative;  
    margin: px auto;   
    transform-style: preserve-d;   
    transform: rotateX(-deg) rotateY(-deg); 
}       
.common {   
    position: absolute;   
    top: ;   
    left: ;   
    width: px;   
    height: px;   
    background:#666;   
    opacity: ;   
    font-size:px;   
    text-align: center;   
    line-height:px;   
    font-weight: bold;   
    color:#fff;   
    border:px solid #fff;   
}       
.right {   
    transform: rotateY(deg) translateZ(px);
    background: rosybrown;
}    
.left {   
    transform: rotateY(-deg) translateZ(px);
    background: rosybrown;
}          
.bottom {   
    transform: rotateX(deg) translateZ(-px);
}

效果圖


編程之家


墻角效果圖

說明: 寫這個其實沒有什么技巧,首先設置 transform-style: preserve-3d; 然后在理解每個面相對角度的基礎上去設置 translateZ 和 rotate3d.

6. 經驗分享

  1. 我們如果是初學 transform,這里介紹一個區分旋轉角度方向的方法,也就是左手法則,我們左手指向設置旋轉坐標的正向,例如 z 軸,左手只向屏幕外,手指自然彎曲的方向就是旋轉的方向。

  2. 我們通常旋轉 都是以中心點為起點開始旋轉的,這往往不是我們想要的方式,可以通過設置 transform-origin 這個屬性改變旋轉起始點的位置。

transform-origin:   ;

上面設置代表在元素的水平面的中心位置。

transform-origin:   ;

上面這個設置代表在元素 top 的中心位置。

transform-origin:    ;

上面這個設置代表在元素 left 的中心位置。

  1. 如果我們在實際工作中遇到改變元素的位置,例如拖拽這些使用 transform:translate3D(x,y,z) 可以提高瀏覽器的性能,而且它的位置變化不會改變頁面中其它元素的位置。

7. 小結

rotateX、rotateY這些是 3D 空間的變化,不可以出席在 2D 空間上面。

返回頂部
主站蜘蛛池模板: 欧美成 人 网 站 免费 | 99国产精品久久久久久久日本竹 | 欧美精品成人a多人在线观看 | 九九色精品国偷自产视频 | 国产亚洲美女在线视频视频 | 丰满人妻熟女色情A片 | 67194在线入口免费 | 3D漫画H精品啪啪无码 | 国产成人综合在线视频 | 国产在线高清视频无码 | 亚洲绝美精品一区二区 | 高H黄暴NP辣H一女多男 | 插曲的痛30分钟视频最新章节 | 亚洲精品免播放器在线观看 | 歪歪爽蜜臀AV久久精品人人槡 | 一区二区三区高清视频 | 男女无遮挡吃奶gift动态图 | 男人国产AV天堂WWW麻豆 | 20岁中国男同志china1069 20岁αsrian男同志免费 | 韩剧甜性涩爱 | 亚洲综合春色另类久久 | 久久6699精品国产人妻 | 在线观看中文 | 欧美精品九九99久久在免费线 | 99久久精品久久久 | 国产国产乱老熟女视频网站97 | 牛牛免费视频 | 国产精品亚洲专一区二区三区 | 最近的中文字幕2019国语 | 成人欧美一区二区三区白人 | 一线高清视频在线播放 | 我的美女奴隶 | 久久re这里视频只有精品首页 | 中文字幕亚洲无限码 | 狠狠色综合久久丁香婷婷 | 免费乱理伦片在线观看夜 | av淘宝 在线观看 | 精品久久日日躁夜夜躁AV | 理论片午午伦夜理片2021 | 刺激一区仑乱 | 久啪久久全部视频在线 |