在CSS3中,能夠利用transform功能來實現文字或圖像的旋轉、縮放、傾斜、移動這四種類型的變形處理,本文將對此作詳細介紹。瀏覽器
用法:transform: rotate(45deg);測試
共一個參數「角度」,單位deg爲度的意思,正數爲順時針旋轉,負數爲逆時針旋轉,上述代碼做用是順時針旋轉45度。spa
用法:transform: scale(0.5) 或者 transform: scale(0.5, 2);orm
參數表示縮放倍數;blog
用法:transform: skew(30deg) 或者 transform: skew(30deg, 30deg);form
參數表示傾斜角度,單位degtransform
關於skew傾斜角度的計算方式表面上看並非那麼直觀,這裏借鑑某大拿繪製的圖舉例說明一下:方法
首先須要說明的是skew的默認原點transform-origin是這個物件的中心點im
我當初就是看到此圖瞬間理解的。top
用法:transform: translate(45px) 或者 transform: translate(45px, 150px);
參數表示移動距離,單位px,
在使用transform方法進行文字或圖像的變形時,是以元素的中心點爲基準點進行的。使用transform-origin屬性,能夠改變變形的基準點。
用法:transform-origin: 10px 10px;
共兩個參數,表示相對左上角原點的距離,單位px,第一個參數表示相對左上角原點水平方向的距離,第二個參數表示相對左上角原點垂直方向的距離;
兩個參數除了能夠設置爲具體的像素值,其中第一個參數能夠指定爲left、center、right,第二個參數能夠指定爲top、center、bottom。
上面咱們介紹了使用transform對元素進行旋轉、縮放、傾斜、移動的方法,這裏講介紹綜合使用這幾個方法來對一個元素進行多重變形。
用法:transform: rotate(45deg) scale(0.5) skew(30deg, 30deg) translate(100px, 100px);
這四種變形方法順序能夠隨意,但不一樣的順序致使變形結果不一樣,緣由是變形的順序是從左到右依次進行,這個用法中的執行順序爲1.rotate 2.scalse 3.skew 4.translate
注:瀏覽器支持性不作介紹,具體使用時請作具體測試,本人秉着遲早全部瀏覽器都會支持的態度寫此文。