1. 程式人生 > >css3過度效果、2D、動畫整理

css3過度效果、2D、動畫整理

1.過度效果

div{transition:all 1s ease 2s;}   div{transsition:屬性 過渡時間 過渡效果 延遲;}

2.2d變形

div:hover{ transform:rotate(90deg) scale(2) skew(30deg) translate(10px);}角度 縮放 傾斜 位置

div:hover{transform:rotate(90deg); transform-origin:right bottom;}旋轉元素的基點位置

transform語法
transform: none|transform-functions;
描述測試
none定義不進行轉換。測試
matrix(n,n,n,n,n,n)定義 2D 轉換,使用六個值的矩陣。測試
matrix3d(n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)定義 3D 轉換,使用 16 個值的 4x4 矩陣。
translate(x,y)定義 2D 轉換。測試
translate3d(x,y,z)定義 3D 轉換。
translateX(x)定義轉換,只是用 X 軸的值。測試
translateY(y)定義轉換,只是用 Y 軸的值。測試
translateZ(z)定義 3D 轉換,只是用 Z 軸的值。
scale(x,y)定義 2D 縮放轉換。測試
scale3d(x,y,z)定義 3D 縮放轉換。
scaleX(x
)
通過設定 X 軸的值來定義縮放轉換。測試
scaleY(y)通過設定 Y 軸的值來定義縮放轉換。測試
scaleZ(z)通過設定 Z 軸的值來定義 3D 縮放轉換。
rotate(angle)定義 2D 旋轉,在引數中規定角度。測試
rotate3d(x,y,z,angle)定義 3D 旋轉。
rotateX(angle)定義沿著 X 軸的 3D 旋轉。測試
rotateY(angle)定義沿著 Y 軸的 3D 旋轉。測試
rotateZ(angle)定義沿著 Z 軸的 3D 旋轉。測試
skew(x-angle,y-angle)定義沿著 X 和 Y 軸的 2D 傾斜轉換。測試
skewX(angle)定義沿著 X 軸的 2D 傾斜轉換。測試
skewY(angle)定義沿著 Y 軸的 2D 傾斜轉換。測試
perspective(n)為 3D 轉換元素定義透視檢視。測試
transform-origin語法
transform-origin: x-axis y-axis z-axis;
描述
x-axis定義檢視被置於 X 軸的何處。可能的值:
  • left
  • center
  • right
  • length
  • %
y-axis定義檢視被置於 Y 軸的何處。可能的值:
  • top
  • center
  • bottom
  • length
  • %
z-axis定義檢視被置於 Z 軸的何處。可能的值:
  • length
過渡效果的時間曲線 語法
transition-timing-function: linear|ease|ease-in|ease-out|ease-in-out|cubic-
bezier(n,n,n,n);
描述
linear規定以相同速度開始至結束的過渡效果(等於 cubic-bezier(0,0,1,1))。
ease規定慢速開始,然後變快,然後慢速結束的過渡效果(cubic-bezier(0.25,0.1,0.25,1))。
ease-in規定以慢速開始的過渡效果(等於 cubic-bezier(0.42,0,1,1))。
ease-out規定以慢速結束的過渡效果(等於 cubic-bezier(0,0,0.58,1))。
ease-in-out規定以慢速開始和結束的過渡效果(等於 cubic-bezier(0.42,0,0.58,1))。
cubic-bezier(n,n,n,n)在 cubic-bezier 函式中定義自己的值。可能的值是 0 至 1 之間的數值。

3.動畫

div{ animation: myfirst 5s linear 2s infinite alternate forwardas;}div{ animation: 名稱  時間 效果 延遲 無限 逆向播放 保持最後一幀;}        @keyframes myfirst{         from{ width:100px;}         to{ width:200px;}         }
CSS3 動畫屬性

下面的表格列出了 @keyframes 規則和所有動畫屬性:

動畫播放次數
animation-iteration-count: n|infinite;
描述測試
n定義動畫播放次數的數值。測試
infinite規定動畫應該無限次播放。測試
是否逆轉播放
animation-direction: normal|alternate;
描述測試
normal預設值。動畫應該正常播放。測試
alternate動畫應該輪流反向播放。測試
動畫時間之外的狀態
animation-fill-mode : none | forwards | backwards | both;
描述
none不改變預設行為。
forwards當動畫完成後,保持最後一個屬性值(在最後一個關鍵幀中定義)。
backwards在 animation-delay 所指定的一段時間內,在動畫顯示之前,應用開始屬性值(在第一個關鍵幀中定義)。
both向前和向後填充模式都被應用。