css3過度效果、2D、動畫整理
阿新 • • 發佈:2019-02-12
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 軸的何處。可能的值:
|
y-axis | 定義檢視被置於 Y 軸的何處。可能的值:
|
z-axis | 定義檢視被置於 Z 軸的何處。可能的值:
|
過渡效果的時間曲線 語法
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 | 向前和向後填充模式都被應用。 |