您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關CSS3中transform屬性如何進行2D和3D變換的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
transform 2D
之前有看到google將搜尋的頁面傾斜,這個功能透過CSS3的transform就可以達成
CSS3 2D transform特性可以旋轉、傾斜、放大縮小和移動元素,對網頁的視覺觀感上提供很大的幫助
使用方法:
transform: transform-function; -webkit-transform: transform-function; /* Safari and Chrome */ -moz-transform: transform-function; /* Firefox */ -o-transform: transform-function; /* Opera */ -ms-transform:transform-function; /* IE9以上 */
變形函式 transform-function:
函式里的θ參數要有單位,有三種單位可以使用:deg (角度) 、 rad (弧度) 、 grad (梯度)。
1.rotate(θ):以參考點為中心軸 2D 旋轉 θ 度。
2.skew(θx,θy):以參考點為中心軸沿著橫向傾斜 θx 度、縱向傾斜 θy 度( 可以拆開成skewX(θ)和skewY(θ) )
3.scale(x,y):指定元素由參考點 2D 橫向縮放 x 倍、縱向縮放 y 倍( 可以拆開成scaleX(x)和scaleY(y),此函式的參數不需要單位 )
4.translate(x,y):指定元素由參考點 2D 橫向移動 x 距離、縱向移動 y 距離( 可以拆開成translateX(x)和translateY(y),此函式的參數單位為px )
5.matrix(a,b,c,d,e,f):指定元素由參考點依據數學變形矩陣 (transformation matrix) 的 6 個參數值產生 2D 變形( 此函式的參數為數字,不需要單位 )
Sample
/* Safari and Chrome 網頁傾斜50度 */ -webkit-transform: rotate(50deg);
transform 3D & perspective
CSS3的transform可以做2D的操作,當然也有3D
但需要再一個擁有perspective屬性的父元素才能顯現3D的效果
例如:
<div id="div1"><!-- perspective --> <div id="div2">3D</div><!-- transform --> </div>
perspective屬性固名思義就是透視的意思;該屬性可以定義3D視覺的角度,讓底下子元素使用3D特效時能夠完整顯示。
perspective使用方法
perspective:150px;
/* 目前并非所有瀏覽器皆支援 */ -webkit-perspective:150px; -moz-perspective:150px;
另外還有個屬性叫perspective-origin
功能是用來定義X和Y軸為基礎的3D位置(定義初始位置)
perspective-origin使用方法:
屬性值:(x軸:left、center、right、長度、百分比) (y軸:top、center、bottom、長度、百分比)
/* perspective-origin 參數預設是50% 50% */ -webkit-perspective-origin: 40% 60%;/* Safari and Chrome */ -webkit-perspective-origin: 40px 60px;/* Safari and Chrome */ -moz-perspective-origin:left bottombottom; /* Firefox */
注意:perspective和perspective-origin受影響的是子元素,而非元素本身
最后就可以對div做3D的效果(rotateX和rotateY)
-webkit-transform: rotateX(290deg); -webkit-transform: rotateY(290deg); -moz-transform: rotateX(290deg); -moz-transform: rotateY(290deg);
感謝各位的閱讀!關于“CSS3中transform屬性如何進行2D和3D變換”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。