一、轉換 transform
1.旋**transform:rotate()
旋轉rotate()函式通過指定的角度引數使元素相對原點進行旋轉。它主要在二維空間內進行操作,設定乙個角度值,用來指定旋轉的幅度。
如果這個值為正值,元素相對原點中心順時針旋轉;如果這個值為負值,元素相對原點中心逆時針旋轉。
transform:rotate(30deg);//旋轉30度(平面),與沿z軸一樣transform:rotatex(30deg);//沿x軸旋轉30度
transform:rotatey(30deg);//沿y軸旋轉30度
transform:rotatez(30deg);//沿z軸旋轉30度
transform:rotatex(30deg) rotatey(30deg) rotatez(30deg);//沿x、y、z軸各旋轉30度
角度取負值就是反方向;行內元素span,要設定display:block|inline-block;才能旋轉;
2. 縮放:transform:scale() ,縮放 scale()函式 讓元素根據中心原點對物件進行縮放。
transform:scale(1.2,0.8);//水平放大到原來的1.2倍,垂直縮小為原來的0.8倍;transform:scalex(1.2);//只水平縮放,
transform:rotatey(0.8);//只垂直縮放
3.位移:transform:translate()
translate()函式可以將元素向指定的方向移動,類似於position中的relative。
或以簡單的理解為,使用translate()函式,
可以把元素從原來的位置移動,而不影響在x、y軸上的任何web元件。
//位移是根據元素的原來位置,而位移,用百分比則是根據元素的寬、高 而位移transform:translate(20px 10px); 位移,x方向位移20px,y方向位移10px;
transform:translatex(50px);x方向
transform:translatey(40px); y方向
transform:translate(50%,50%);位移,x方向位移元素寬度的50%,y方向位移元素寬度的50%;
4.變形--原點: transform-origin()
任何乙個元素都有乙個中心點,預設情況之下,其中心點是居於元素x軸和y軸的50%處。也就是中心點
在沒有重置transform-origin改變元素原點位置的情況下,css變形進行的旋轉、位移、縮放,扭曲等操作都是以元素自己中心位置進行變形。
但很多時候,我們可以通過transform-origin來對元素進行原點位置改變,使元素原點不在元素的中心位置,以達到需要的原點位置。
transform-origin:left top;//原點在左上角;transform-origin:center bottom;//原點在底邊中間;
transform-origin:30% 40%;//原點在座標為:寬的30%、高的40% 處;百分比可大於100%
transrorm-origin:25px 25px; // 原點在座標:25px 25px 處。
//百分比與畫素具體值是相對左上角(0 0)來說的
5.傾斜:transform:skew(角度) 在x 或y方向傾斜一定角度
transform:skew(10deg,10deg);//沿著 x 和 y 軸的2d傾斜10deg。transform:skewx(20deg);//沿著 x 軸的 2d 傾斜20。
6.transform書寫規範
transform在不同瀏覽器核心下的書寫規則:二、過渡 transitiontransition它可以通過一些簡單的css事件來觸發元素的外觀變化,讓效果顯得更加細膩。//mozilla核心瀏覽器:firefox3.5+
-moz-transform: rotate | scale | skew | translate ;
//webkit核心瀏覽器:safari and chrome
-webkit-transform: rotate | scale | skew | translate ;
//opera
-o-transform: rotate | scale | skew | translate ;
//ie9
-ms-transform: rotate | scale | skew | translate ;
//w3c標準
transform: rotate | scale | skew | translate ;
//上面列出是不同瀏覽核心transform的書寫規則,如果需要相容各瀏覽器的話,以上寫法都需要呼叫
簡單點說,就是通過滑鼠的單擊、獲得焦點,被點選或對元素任何改變中觸發,並平滑地以動畫效果改變css的屬性值。
在css中建立簡單的過渡效果可以從以下幾個步驟來實現:
第一,在預設樣式中宣告元素的初始狀態樣式;
第二,宣告過渡元素最終狀態樣式,比如懸浮狀態;
第三,在預設樣式中通過新增過渡函式,新增一些不同的樣式。
css3的過渡transition屬性是乙個復合屬性,主要包括以下幾個子屬性:<1.需要過渡的屬性:transition-propertybr />
transition-property:指定過渡或動態模擬的css屬性
<
br />
transition-duration:指定完成過渡所需的時間
<
br />
transition-timing-function:指定過渡函式
<
br />
transition-delay:指定開始出現的延遲時間
<
br />
transition-property用來指定過渡動畫的css屬性名稱,而這個過渡屬性只有具備乙個中點值的屬性(需要產生動畫的屬性)才能具備過渡效果,其對應具有過渡的css屬性主要有:
//特別注意:當「transition-property」屬性設定為all時,表示的是所有中點值的屬性。也就是懶得寫width、color之類,直接寫個all復合寫法:divdiv:hover //hover執行過渡,寬度由原來過渡到500px,背景色由原來過渡到橙黃色
transition:width 0.5s ease 0s; //其中運動方式ease可不寫(採用預設);延遲時間可不寫(預設無延遲);
transition:all 0.5s 0.2s; //當有兩個時間時,第乙個表示過渡的時間,第二個是延遲的時間,
//all可代替所有屬性,當所有屬性同時開始過渡,可採用此樣式,
有先後順序的多重過渡:
transition:width 0.5s,height 0.5s 0.5s,background-color 0.8s linear 1s;
// 表示先是寬過渡,寬過渡結束後開始高度過渡,結束後再是背景色過渡,計算後各自延遲時間
//例子.box2 span
.box2:hover span
CSS3的過渡 動畫 轉換
特別說明 以下屬性目前都需要加上各瀏覽器廠商字首,瀏覽器 廠商字首 瀏覽器核心 chrome safari webkit blink webkit opera o blink firefox moz gecko ie ms trident 1 過渡 transition property 指定應用過...
CSS3過渡和動畫
此文首發於 lijing0906.github.io 智慧型運維,圓球一直勻速旋轉。html id testpage class topbar class ball src css3anitran 0.png alt srcset div class bottombar src css3anitra...
css3過渡和動畫
css3裡面新增屬性 transition animation 等等,方便了前端小夥伴們做動畫。不用再用js寫長長的一大串,效果還不好!這是對我等菜鳥來說,大神們怎麼著都可以,唉!用 來實現動畫,其實就是不同時間,元素有不同的狀態。而這裡面有個很好用的2d轉換屬性 transform,廣大瀏覽器的支...