亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

css3實現動畫的方式有哪些

發布時間:2022-03-01 11:38:14 來源:億速云 閱讀:136 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關css3實現動畫的方式有哪些,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

  css實現動畫主要有3種方式,第一種是:transition實現漸變動畫,第二種是:transform轉變動畫,第三種是:animation實現自定義動畫。

  transition漸變動畫

  我們先看一下transition的屬性:

  property:填寫需要變化的css屬性如:width,line-height,font-size,color等,所有作用與dom樣式的屬性;

  duration:完成過渡效果需要的時間單位(s或者ms)

  timing-function:完成效果的速度曲線(linear,ease,ease-in,ease-out等等)

  timing-function具體的值可以看下面的表格:

  delay: 動畫效果的延遲觸發時間(單位ms或者s)

  下面我們看一個完整的例子:

  <div class="base"></div>

  .base {

  width: 100px;

  height: 100px;

  display: inline-block;

  background-color: #0EA9FF;

  border-width: 5px;

  border-style: solid;

  border-color: #5daf34;

  transition-property: width,height,background-color,border-width;

  transition-duration: 2s;

  transition-timing-function: ease-in;

  transition-delay: 500ms;

  /*簡寫*/

  /*transition: all 2s ease-in 500ms;*/

  &:hover {

  width: 200px;

  height: 200px;

  background-color: #5daf34;

  border-width: 10px;

  border-color: #3a8ee6;

  }

  }

  可以看到,鼠標移上去的時候,動畫延遲0.5s開始,并且由于border-color沒有設置到transition-property里面,所以是沒有漸變動畫的。

  transform轉變動畫

  transform屬性應用于2D 或 3D轉換。該屬性允許我們能夠對元素進行旋轉、縮放、傾斜、移動這四類操作.一般是配合transition的屬性一起使用。

  none:定義不進行任何轉換,一般用于注冊掉該轉換。

  transform-functions:定義要進行轉換的類型函數。主要有:

  2.1 旋轉(rotate):主要分為2D旋轉和3D旋轉。rotate(angle),2D 旋轉,參數為角度,如45deg;rotate(x,y,z,angle),3D旋轉,圍繞原地到(x,y,z)的直線進行3D旋轉;rotateX(angle),沿著X軸進行3D旋轉;rotateY(angle);rotateZ(angle);

  2.2 縮放(scale):一般用于元素的大小收縮設定。主要類型同上,有scale(x, y)、scale3d(x, y, z)、scaleX(x)、scaleY(y)、scaleZ(z),其中x、y、z為收縮比例。

  2.3 傾斜(skew):主要用于對元素的樣式傾斜。skew(x-angle, y-angle),沿著x和y軸的2D傾斜轉換;skewX(angle),沿著x軸的2D傾斜轉換;skew(angle),沿著y軸的2D傾斜轉換。

  2.4 移動(translate):主要用于將元素移動。translate(x, y),定義向x和y軸移動的像素點;translate(x, y, z),定義像x、y、z軸移動的像素點;translateX(x);translateY(y);translateZ(z)。

  <h6>transition配合transform一起使用</h6>

  <div class="base base2"></div>

  .base2{

  transform:none;

  transition-property: transform;

  &:hover {

  transform:scale(0.8, 1.5) rotate(35deg) skew(5deg) translate(15px, 25px);

  }

  }

  可以看到盒子發生了旋轉,傾斜,平移,放大。

  animation自定義動畫

  為了實現更靈活的動畫效果,css3還提供了自定義動畫的功能。

  (1) name:需要綁定到選擇器的keyframe名稱。

  (2) duration:完成該動畫需要花費的時間,秒或毫秒。

  (3) timing-function:跟transition-linear一樣。

  (4) delay:設置動畫在開始之前的延遲。

  (5) iteration-count:設置動畫執行的次數,infinite為無限次循環。

  (6) direction:是否輪詢反向播放動畫。normal,默認值,動畫應該正常播放;alternate,動畫應該輪流反向播放。

  <h6 class="title">animate自定義動畫</h6>

  <div class="base base3"></div>

  .base3 {

  border-radius: 50%;

  transform:none;

  position: relative;

  width: 100px;

  height: 100px;

  background: linear-gradient(

  35deg,

  #ccffff,

  #ffcccc

  );

  &:hover {

  animation-name: bounce;

  animation-duration: 3s;

  animation-iteration-count: infinite;

  }

  }

  @keyframes bounce{

  0% {

  top: 0px;

  }

  50% {

  top: 249px;

  width: 130px;

  height: 70px;

  }

  100% {

  top: 0px;

  }

  }

關于“css3實現動畫的方式有哪些”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梧州市| 会昌县| 禄丰县| 大冶市| 蒙阴县| 三门峡市| 嘉荫县| 阿拉善右旗| 边坝县| 富顺县| 岑巩县| 方山县| 东乡县| 阿勒泰市| 利辛县| 富宁县| 兴城市| 广安市| 门头沟区| 松阳县| 辉南县| 庆云县| 宁津县| 商丘市| 宁化县| 萝北县| 巴彦淖尔市| 镇沅| 囊谦县| 蓬安县| 平武县| 郎溪县| 加查县| 长沙县| 涿州市| 香格里拉县| 商丘市| 博湖县| 湖州市| 民乐县| 彩票|