1. 程式人生 > 其它 >transition過渡和transform轉換

transition過渡和transform轉換

transition過渡

  讓樣式變化時有一個過渡效果。

  transition-property:過渡的屬性,all 指的是所有屬性都過渡。

  transition-duration:過渡時間。

  transition-delay:延遲過渡的時間。

  transition-timing-function:過渡速度曲線,值和動畫的一樣。

  transition 是一個複合屬性,它的值依次是:要過渡的屬性、過渡時間、延遲過渡時間、過渡速度曲線。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta 
charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>transition過渡</title> <style> body { background: #333; display: flex; justify-content: center
; align-items: center; height: 100vh; } .box { background: white; width: 100px; height: 100px; /* 執行過渡的屬性 all:所有屬性都有過渡 */ transition-property: all; /* 過渡時間 */ transition-duration: 2s; /* 過渡延遲時間 */ /* transition-delay: 2s; */ /* 過渡速度曲線
*/ transition-timing-function: ease-in-out; /* 過渡 */ /* transition: 過渡屬性 過渡時間 過渡延時時間 過渡速度曲線; */ } .box:hover { background: red; color: cyan; border-radius: 50%; width: 210px; height: 120px; } </style> </head> <body> <div class="box">字型</div> </body> </html>

transform轉換

  可以讓元素進行 2D 或 3D 轉換,比如說平移、旋轉等。

  rotate(25deg):元素進行順時針旋轉 25 度,如果是負數那就是逆時針。

  skew(25deg):元素進行扭曲 25 度。

  scale(2):元素放大 2 倍。

  translateY(100px):元素 Y 軸向下移動 100px。

  translateX(100px):元素 X 軸向右移動 100px。

  transition(100px, 100px):元素 X 軸和 Y 軸移動 100px。引數 1 是 X 軸,引數 2 是 Y 軸。

<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>transform</title>
  <style>
    body {
      background: #333;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 100vh;
    }

    .box {
      background: white;
      width: 300px;
      height: 300px;
      /* 旋轉25度 */
      /* transform: rotate(25deg); */
      /* 扭曲25度 */
      /* transform: skew(25deg); */
      /* 放大2倍 */
      /* transform: scale(2); */
      transition: 0.5s;
    }

    .box:hover {
      /* 旋轉25度 */
      /* transform: rotate(25deg); */
      /* 扭曲25度 */
      transform: skew(25deg);
      /* 放大2倍 */
      /* transform: scale(2); */
      /* Y 軸向下移動 100px */
      /* transform: translateY(100px); */
      /* X 軸右移動 100px */
      /* transform: translateX(100px); */
      /* transform:translate(X軸, Y軸) */
      /* transform: translate(100px, 100px); */
    }
  </style>
</head>

<body>
  <div class="box"></div>
</body>

</html>