Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 Warning: error_log(/data/www/wwwroot/hmttv.cn/caches/error_log.php): failed to open stream: Permission denied in /data/www/wwwroot/hmttv.cn/phpcms/libs/functions/global.func.php on line 537 好男人社区www在线播放视频,中文字幕一级毛片,成人在免费观看视频国产

          整合營銷服務商

          電腦端+手機端+微信端=數據同步管理

          免費咨詢熱線:

          CSS動畫和變換的詳細指南

          CSS動畫和變換的詳細指南

          我們看到設計精美的科技巨頭網站(如Apple或微軟)或特斯拉或梅賽德斯等汽車公司時,我們每個人都會感到震驚。

          使這些網站脫穎而出的因素,往往是吸引人的動畫和效果,讓我們一次又一次地看。

          那么,他們如何使網站如此驚人地互動?

          有沒有想過這些網站上的動畫實際上是如何運作的?

          您是否希望為您的企業設計一個同樣優雅和互動的網站?

          如果是的話,那就別再看了。

          請繼續閱讀,因為這是一個廣泛的摘錄,涵蓋了CSS動畫和變換的基礎知識,可以極大地幫助您實現商業網站的相同功能。

          如果您剛剛進入前端開發領域,或者希望擴展您對前端開發的理解,那么請繼續閱讀此博客,因為在最后,您將全面了解CSS。

          CSS或層疊樣式表是您會注意到的Web應用程序的相當一部分。

          雖然CSS為Web應用程序設置了樣式,但HTML或超文本標記語言構成了它。

          動畫在改善用戶體驗方面發揮著關鍵作用,因為它們有助于提供改進的視覺反饋,并有助于與網站進行交互。

          CSS 3具有豐富的內置屬性,大大有助于動畫元素,并且在所有主流瀏覽器中也是如此。

          但是 - 強大的力量,更大的責任。

          動畫需要明智地使用,否則你最終可能會創建一個比交互式更令人分心的頁面。動畫的整個目的是作為一種輔助,而不是在使用Web應用程序時的障礙。

          根據谷歌的一份報告,幾乎50%的網絡流量來自移動設備。因此,任何企業都需要創建適合移動設備的動畫。

          對CSS(最好是CSS 3),HTML和某些jQuery 有基本的了解也很有必要。jQuery是一個Javascript庫,可以幫助開發人員使用網站的元素。這方面的技術術語是 - DOM操作。

          由于您的目標受眾可能會有所不同,因此您可能使用多種網絡瀏覽器(Mozilla Firefox,Google Chrome,Safari,Opera,Internet Explorer),因此需要滿足所有這些需求。

          CSS動畫有三個重要方面:

          • Transforms(變換)
          • Transitions(轉變)
          • Keyframes(關鍵幀)

          描述CSS中動畫和變換的關鍵元素的流程圖。

          A部分:Transforms

          變換有助于以各種奇妙的方式改變您的網頁元素 - 從移動元素到重新調整大小,從旋轉元素到傾斜它。

          最好的部分 - 您可以在不改變文檔流程的情況下更改任何內容。

          變換有四個重要方面:

          1. Translate
          2. Translate
          3. Rotate
          4. Skew

          讓我們深入挖掘一下,好嗎?

          1.Translate

          基于Translate將對象從一個點移動到另一個點基本上。

          資料來源:0fps.net

          Translate會更改元素的坐標。它用于更改2D平面上組件的外觀。

          Translate意味著在網頁上簡單地將元素從一個位置移動到另一個位置。您可以在X軸,Y軸或兩者上平移對象。

          Moves the element on the X-axis
          Syntax: transform: translateX(200px); or transform: translateX(-200px);
          Moves the element on the Y-axis
          Syntax: transform: translateY(200px); or transform: translateY(-200px);
          Using shorthand
          Syntax: transform: translate(x-axis, y-axis)
          Example: transform: translate(200px, 200px);
          Alert!
          transform: translate(200px); [will only translate the element along the X-axis]
          

          2.Scale

          資料來源:camo.envatousercontent.com

          人們可以使用圖像的大小以及軸X和Y.縮放會扭曲元素的形狀并降低元素的質量。大于1的數字將增加大小,小于1的小數將減小大小。

          Scaling along the X-axis - transform: scaleX(3);
          Scaling along the Y-axis - transform: scaleY(0.5);
          Using the shorthand - for scaling along X and Y axis together -
          transform: scale(3 , 0.5); or transform: scale(0.5);
          

          3.Rotate

          您可以順時針或逆時針旋轉元素。使用的測量單位是。正值將順時針旋轉元素,反之亦然。這種旋轉也會沿X,Y和Z軸發生。

          資料來源:gamedev.stackexchange.com

          理解CSS動畫中的旋轉是最棘手的部分之一,因此很多人無法利用此功能的真正潛力。

          沿著X軸

          想象一下,棉花糖在篝火上旋轉時被烤。您必須將元素可視化以與X軸一起轉換為頁面,這就是X軸上的旋轉效果。我們不會看到3D旋轉,我們能夠看到的是元素高度的變化。

          Syntax: transform: rotateX(45deg);
          

          沿著Y軸

          想象一個桿子上的舞者。元素將沿Y軸旋轉到頁面中。你會注意到的是組件的寬度變化了。

          Syntax: transform: rotateY(45deg);
          

          沿Z軸

          這是使用旋轉時可以使用的最佳方向,因為您可以看到實際旋轉的元素。也可以分別用正和負旋轉值修改順時針和逆時針運動。為此,嘗試想象箭頭進入頁面并且元素相對于該箭頭旋轉。

          transform: rotateZ(45deg) – clockwise rotation
          transform: rotateZ(-45deg) – counterclockwise rotation
          

          Skew

          4.gif

          Skew元件意味著傾斜。它具有正值和負值,并且像旋轉一樣,它也以來度量。

          正X值將元素向左彎曲,反之亦然,對于負X.同樣,正Y值向下傾斜元素,反之亦然。默認情況下,如果變換中未指定X或Y,則它將相對于X軸移動元素。

          Along X-axis
          transform: skewX(45deg) or skew(45deg);
          Along Y-axis
          transform: skewY(80deg);
          

          5.組合變換

          也可以將多個轉換應用于單個轉換語句中。順序確實很重要(有時),因為第二個變換將應用于第一個變換,第三個變換將應用于前兩個變換的結果。

          資料來源:commons.wikimedia.org

          transform: translateX(200px) rotateX(45deg) scaleY(1.5) skewX(45deg);
          

          所有這些變換都將對某些用戶事件生效,例如懸停,點擊,焦點,活動等。要查看動作中的魔法,您可以在這些事件中添加變換。

          .element-to-animate{
          display: block
          }
          .element-to-animate:hover{
          transform: translateX(200px) rotateX(45deg) scaleY(1.5) skewX(45deg);
          }
          

          B部分:TRANSITIONS

          資料來源:mozillademos.org

          如果您有機會查看上面的代碼,您可能會注意到在狀態更改期間懸停時的混蛋; 這恰恰是Transitions的目的。Transitions有助于使動畫流暢。

          可以借助以下屬性控制轉換:

          • transition-property
          • transition-duration
          • transition-timing-function
          • transition-delay

          transition-property

          這些是可以使用轉換的CSS屬性。其范圍從使用邊距和填充到背景和邊框。您可以將轉換應用于特定功能或完整列表。可在此處找到此權限范圍內所有屬性的完整列表

          將transition屬性應用于特定的CSS屬性

          transition-property: background-color;
          

          將轉換應用于整個CSS屬性列表

          transition-property: all;
          

          transition-duration

          動畫將在其中播放的持續時間。這可以很容易地以秒(s)或毫秒(ms)來測量。建議使用秒,因為它使它們易于閱讀 - 即使你辦公室的同事也不會被你惹惱!

          transition-duration: 0.5s;
          

          transition-timing-function

          速度可以通過動畫來改變用戶體驗; 因此建議控制它。您可以通過使用transition-timing-function來實現它。

          CSS 3團隊非常友好地為我們提供了一些內置的速度值,如ease, ease-in, ease-in-out

          如果你希望掌握速度的全部命令 - 使用Bezier曲線。

          transition-timing-function: ease;
          transition-timing-function: cubic-bezier(0.25, 0.1, 0.25, 1);
          

          transition-delay

          這有助于在啟動動畫的觸發事件和動畫的實際開始之間創建暫停。簡單地說,轉換延遲 - 延遲動畫。它以秒(s)或毫秒(ms)為單位進行測量。

          transition-delay: 0.5s;
          

          速記:

          transition: (property) (duration) (transition-timing-function) (transition-delay);
          

          兩個面向時間的功能的順序,即持續時間和轉換延遲問題 !

          Transforms和Transitions一起使用

          7.gif

          狀態1:NORMAL

          .element-to-animate display: block; transition: transform 1s ease 0.2s, background 1s; }
          

          狀態2:HOVER

          .element-to-animate:hover{ background: black; transform: translateX(200px); }
          

          對于在狀態1和狀態2之間轉換,可以將轉換分別應用于所有屬性和單個時序,或者如果要在狀態2中的所有屬性上應用轉換,則:

          transition: all 1s ease 0.2s;
          

          C部分:KEYFRAMES

          資料來源:css-tricks.com

          關鍵幀有助于在特定時間將動畫從一個更改為另一個。

          可以通過兩種方式使用關鍵幀:

          1. 從…到…
          2. 百分比方法

          1.從…到…

          在這種方法中,動畫期間只有2個狀態 - 開始狀態和結束狀態。

          句法:

          @keyframes animation_name {
           from { }
           to { }
          }
          

          使元素(例如,Car)動畫化以從其初始位置水平移動:

          @keyframes drive{
          from {
          transform: translateX(-200);
          }
          to {
          transform: translateX(1000px);
           }
          }
          .car{
          animation-name: drive;
          animation-duration: 3s;
          animation-fill-mode: forwards;
          animation-delay: 2s;
          animation-iteration-count: infinite;
          animation-timing-function: ease-in;
          animation-direction: normal;
          }
          

          2.百分比方法

          我們不能在@keyframes中使用from-to,因為現在有超過1個狀態。百分比方法將動畫分解為各種中間狀態,包括開始和結束狀態。起始狀態用0%表示,結束狀態用100%表示。可以有多少中間狀態,但建議在整個過程中保持狀態的隔離。

          示例:0% — 25% — 50% — 75% — 100%

          @keyframes jump{
          0% { transform: translateY(-50px) }
          50% { transform: translateY(-100px) }
          100% { transform: translateY(-50px) }
          }
          

          ?動畫速記

          也可以使用這種簡潔的格式來編寫動畫:

          animation: (animation-name) (animation-duration) (animation-fill-mode) (animation-timing-function) (animation-iteration-count) (animation-direction) (animation-delay);

          注意:動畫延遲將始終在動畫持續時間之后出現。除了它們 - 時間導向的功能和其他屬性的順序無關緊要。

          例:

          .car{
          animation-name: drive;
          animation-duration: 3s;
          animation-fill-mode: forwards;
          animation-delay: 2s;
          animation-iteration-count: infinite;
          animation-timing-function: ease-in;
          animation-direction: normal;
          }
          Can be re-written as:
          .car{
          animation: drive 3s ease-in infinite normal 2s;
          }
          

          我們希望在“car”元素上添加兩個動畫 - 驅動和跳轉。我們可以通過使用“鏈接動畫”和單行代碼完成此操作。

          ?什么是鏈接動畫?

          使用CSS輕松播放多個動畫。逗號分離技術可用于鏈接動畫并運行一個動畫。例如,

          ···

          .car{

          animation: drive 3s ease-in infinite normal 2s, jump 2s ease 4 alternate reverse;

          }

          ···

          動畫屬性分類:

          • 使用哪種動畫?
          • animation-name:動畫的,由名稱@keyframes之后的關鍵字指示
          • 動畫結束時該怎么辦?
          • animation-fill-mode:告訴如何處理動畫窗口外部動畫的元素。
          • 如果您希望重復動畫“n”次,請使用
          • animation-iteration-count:重復動畫。它可以具有數字值,或者如果您希望動畫連續播放,則使用“無限”。
          • 如果您想要反轉動畫的方向
          • animation-direction:您不需要一起編寫單獨的動畫來反轉動畫。你可以應用它來播放當前動畫,它的方向。
          In From – To Approach:
          reverse: to - from
          alternate: from-to -> to-from -> from-to
          alternate-reverse: to-from -> from-to -> to-from
          In Percentage Approach
          reverse: 100% - 0%
          alternate: 0% - 100% -> 100% - 0% -> 0% - 100%
          alternate-reverse: 100% - 0% ->0% - 100% ->100% - 0%
          
          • 動畫定時功能,控制動畫開始,行為和結束的速度。有一些內置值,如ease,ease-in,你可以使用cubic-bezier(n,n,n,n)編寫自己的值。在這玩吧
          • 延遲CSS動畫也可以 使用動畫延遲將在事件被觸發后幾秒/毫秒啟動動畫。

          結論

          一開始習慣CSS可能有點復雜。但是一旦你習慣了,你就會發現CSS動畫和變換非常奇妙。

          謝謝閱讀。我們希望這篇文章能幫到你。如果確實如此,請大家豎起大拇指,如果您有任何疑問,請隨時放棄您的意見。此外,如果您想要分享您想要分享的CSS變換或動畫的令人興奮的用途,我們很樂意聽取您的意見。

          翻譯自:https://medium.com/engineerbabu/a-detailed-guide-to-css-animations-and-transitions-b544502c089c

          擊右上方紅色按鈕關注“web秀”,讓你真正秀起來

          前言

          說起CSS3動畫,就必須說說 transform,translate,transition,animation這4個屬性,transform主要定義元素的動作,比如旋轉、傾斜、位移等,translate是transform里面的屬性,用于2D/3D位移。后2個主要對動作進行描述,動畫時間、速度曲線、次數等。

          如何快速上手基礎的CSS3動畫

          下面我用是一些簡單的示例,讓大家快速的入門上手:

          快速開始第一個動畫

          <style>
          .div1{
           width: 100px;
           background: red;
           /** 動畫描述:寬度改變動畫 用時 1s*/
           transition: width 1s;
          }
          .div1:hover{
           width: 200px;
           background: blue;
          }
          </style>
          
          <div class="div1">動畫</div>
          
          

          如何快速上手基礎的CSS3動畫

          這里hover事件時改變寬度和背景顏色,用transition來描述動畫,由于我們只對width進行了描述,所以背景色,鼠標指上去,會立馬變色,并不會有漸變的過程。

          這里為什么用transition而不用animation?那就要說說他們直接的區別了。

          transition需要觸發一個事件, 而animation在不需要觸發任何事件的情況下也可以顯式的隨著時間變化來改變元素css的屬性值,從而達到一種動畫的效果。transition屬性是一個簡單的動畫屬性,非常簡單非常容易用。可以說它是animation的簡化版本,是給普通做簡單網頁特效用的。

          現在明白了吧,因為我們用的hover事件,所以要用transition。

          下面請看第二個例子

          快速開始第二個動畫

          <style>
          .div1{
           width: 100px;
           background: red;
           /** 動畫描述:寬度顏色改變動畫 用時 1s infinite(無限次)*/
           animation: second 1s infinite;
           color: #fff;
          }
          @keyframes second{
           /**開始(可以用百分比表示)*/
           from {
           width: 100px;
           background: red;
           }
           /**結束(可以用百分比表示)*/
           to {
           width: 200px;
           background: blue;
           }
           /** or */
           /**開始*/
           0% {
           width: 100px;
           background: red;
           }
           /**中間可以加多個區間*/
           /**結束*/
           100% {
           width: 200px;
           background: blue;
           }
          }
          </style>
          
          <div class="div1">動畫</div>
          
          

          如何快速上手基礎的CSS3動畫

          這里動畫從加載就開始執行,所以用了animation,改變寬度和背景色,用時1s,并且無限次循環執行。@keyframes規則是創建動畫。 -webkit-(chrome/safari), -ms-(ie) 或 -moz-(firefox) 用于兼容不同瀏覽器。

          快速開始第三個動畫

          <style>
          .div1{
           width: 100px;
           background: red;
           animation: second 1s infinite;
           color: #fff;
          }
          @keyframes second{
           100% {
           transform: rotate(20deg);
           }
          }
          </style>
          
          <div class="div1">動畫</div>
          
          

          如何快速上手基礎的CSS3動畫

          transform:rotate使其div元素2D旋轉20°.當然你可以設置transform:rotateY, Y 軸的 3D 旋轉。

          如何快速上手基礎的CSS3動畫

          你還可以設置transform: translate,進行2D,3D位移;

          如何快速上手基礎的CSS3動畫

          transform: scale,進行2D,3D縮放;

          如何快速上手基礎的CSS3動畫

          transform: skew,進行2D傾斜等等。

          如何快速上手基礎的CSS3動畫

          總結

          好的動畫效果,第一要素是:好的想法,有創意,才有好的成品;第二要素是:有好的實現解題思路,當有設計后,制作就需要想辦法實現效果,剝繭抽絲,一步一步來;第三要素:不畏懼的心,勇敢嘗試,多實踐,多動手,靈感往往來與你寫的過程中。

          有了上面的小示例,相信小伙伴們也能自己寫寫簡單的CSS3動畫了,如果有疑問,可以評論留言,大家一起學習探討。

          ss動畫就是元素從一種樣式過渡到另一種樣式的過程。常見的動畫效果很多,比如,平移、旋轉、縮放等,css實現動畫的方式有以下幾種:

          1、transition:實現漸變動畫

          2、transform:實現轉變動畫

          3、animation:實現自定義動畫

          一、實現漸變動畫

          1. 語法

          transition:property duration timing-function delay;

          2.子屬性介紹

          transition-property:填寫需要變化的css屬性;

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

          transition-timing-function:指定過渡函數,規定效果的速度曲線;

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

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

          并不是所有屬性都能過渡,比如display: none 到 display: block。

          3.下面讓我們看一個完整的例子

          html代碼如下:

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

          css代碼如下:

          <style>

          .box{

          width: 200px;

          height: 200px;

          background: #6697ea;

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

          transition-duration: 2s;

          transition-timing-function: ease-in;

          transition-delay: 500ms;

          /*簡寫*/

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

          }

          .box:hover{

          width: 300px;

          height: 300px;

          background: #cbb3d5;

          border-radius: 50%;

          }

          </style>

          效果如下:

          二、實現轉變動畫

          transform屬性應用于2D 或 3D轉換。該屬性允許我們能夠對元素進行旋轉、縮放、傾斜、移動這四類操作。

          1. 旋轉(rotate):主要分為2D旋轉和3D旋轉。

          1.1 2D旋轉

          transform:rotate(45deg); //順時針旋轉45度

          1.2 3D旋轉

          圍繞原地到(x,y,z)的直線進行3D旋轉

          transform:rotate(x,y,z,angle);

          • x,y,z:分別表示 X、Y 和 Z 軸方向,都不能省略;
          • angle:設置對象設置對象的旋轉角度,不能省略;
          • rotateX(angle),沿著X軸進行3D旋轉;rotateY(angle),沿著Y軸進行3D旋轉;rotateZ(angle),沿著Z軸進行3D旋轉;
          • 一個參數 “角度”,單位 deg 為度的意思,正數為順時針旋轉,負數為逆時針旋轉。

          2. 縮放(scale):一般用于元素的大小收縮設定。主要分為2D縮放和3D縮放。

          2.1 2D縮放

          transform:scale(0.5);

          transform:scale(0.5,2);

          • 一個參數時:表示水平和垂直同時縮放該倍率。
          • 兩個參數時:第一個參數指定水平方向的縮放倍率,第二個參數指定垂直方向的縮放倍率 。

          2.2 3D縮放

          transform:scale3d(x,y,z);

          transform:scaleX(x);

          transform:scaleY(y);

          transform:scaleZ(z);

          • x,y,z為縮放比例。

          3. 傾斜(skew):主要用于對元素的樣式傾斜。

          transform:skew(30deg);

          transform:skew(30deg,30deg);

          • 一個參數時:表示水平方向的傾斜角度。
          • 兩個參數時:第一個參數表示水平方向的傾斜角度,第二個參數表示垂直方向的傾斜角度 。
          • skew 的默認原點 transform-origin 是這個物件的中心點。

          4.移動(translate):主要用于將元素移動。主要分為2D旋轉和3D旋轉。

          4.1 2D移動

          transform:translate(45px);

          transform:translate(45px,150px);//沿著X軸和Y軸同時移動

          • 一個參數時:表示水平方向的移動距離。
          • 兩個參數時:第一個參數表示水平方向的移動距離,第二個參數表示垂直方向的移動距離。

          4.2 3D移動

          transform:translateX(45px);//僅僅在X軸移動

          transform:translateY(45px);//僅僅在Y軸移動

          transform:translateZ(45px);//僅僅在Z軸移動

          transform:translate3d(x,y,z);//在X,Y,Z軸上都移動

          • transformZ的直觀表現形式就是大小變化,實質是XY平面相對于視點的遠近變化(說遠近就一定會說到離什么參照物遠或近,在這里參照物就是perspective屬性)。
          • x和y可以是長度值,也可以是百分比,百分比是相對于其本身元素水平方向的寬度和垂直方向的高度;z只能設置長度值。

          5.基準點 transform-origin

          • 在使用 transform 方法進行文字或圖像的變形時,是以元素的中心點為基準點進行的 。使用 transform-origin 屬性,可以改變變形的基準點 。
          • 用法: transform-origin: 10px 10px;
          • 表示相對左上角原點的距離,單位 px,第一個參數表示相對左上角原點水平方向的距離,第二個參數表示相對左上角原點垂直方向的距離;
          • 兩個參數除了可以設置為具體的像素值,其中第一個參數可以指定為 left、center、right,第二個參數可以指定為 top、center、bottom。

          6.一般配合transition過度使用。transform不支持inline元素,使用之前把它變為block。

          為方便演示,可以看如下效果:

          三、實現自定義動畫

          為了實現更靈活的動畫效果,css3還提供了自定義動畫的功能,關鍵幀動畫@keyframes通常搭配 animation 屬性一起使用,首先學習怎么定義關鍵幀動畫

          1.@keyframes 規則

          • @keyframes 規則用于創建動畫 。在 @keyframes 中規定某項 CSS 樣式, 就能創建由當前樣式逐漸改為新樣式的動畫效果 。
          • 必須定義動畫的名稱和時長 。如果忽略時長, 則動畫不會允許, 因為默認值是 0。
          • 請用百分比來規定變化發生的時間, 或用關鍵詞 “from” 和 “to”, 等同于 0% 和 100% 。

          2.animation屬性

          • name:需要綁定到選擇器的keyframe名稱。
          • duration:完成該動畫需要花費的時間,秒或毫秒。
          • timing-function:跟transition-linear一樣。
          • delay:設置動畫在開始之前的延遲。
          • iteration-count:設置動畫執行的次數,infinite為無限次循環。
          • direction:是否輪詢反向播放動畫。normal,默認值,動畫應該正常播放;alternate,動畫應該輪流反向播放。

          3.下面讓我們看一個完整的例子

          html代碼如下:

          <div class="head">

          <div class="eyes-one"></div>

          <div class="eyes-two"></div>

          <div class="smile"></div>

          </div>

          css代碼如下:

          .head {

          -webkit-animation-name: up-down;

          animation-name: up-down;

          -webkit-animation-duration: 1s;

          animation-duration: 1s;

          -webkit-animation-timing-function: ease-in-out;

          animation-timing-function: ease-in-out;

          -webkit-animation-iteration-count: infinite;

          animation-iteration-count: infinite;

          position: absolute;

          top: 0;

          right: 0;

          bottom: 0;

          left: 0;

          margin: auto;

          width: 50.2vmin;

          height: 50.2vmin;

          background: #ffffff;

          overflow: hidden;

          border-radius: 50%;

          background: #4b96ca;

          }

          .head .eyes-one, .head .eyes-two {

          position: absolute;

          top: 0;

          right: 0;

          bottom: 0;

          left: 0;

          margin: auto;

          width: 14.5vmin;

          height: 14.5vmin;

          background: white;

          border-radius: 50%;

          overflow: auto;

          position: absolute;

          }

          .head .eyes-one {

          -webkit-animation-name: bounce;

          animation-name: bounce;

          -webkit-animation-duration: 1.4s;

          animation-duration: 1.4s;

          -webkit-animation-timing-function: ease-in-out;

          animation-timing-function: ease-in-out;

          -webkit-animation-iteration-count: infinite;

          animation-iteration-count: infinite;

          top: -9.5vmin;

          left: 2.5vmin;

          }

          .head .eyes-one:before {

          content: "";

          position: absolute;

          width: 9.2vmin;

          height: 9.2vmin;

          background: #1f2033;

          top: 1.8vmin;

          left: 0.9vmin;

          border-radius: 50%;

          }

          .head .eyes-two {

          -webkit-animation-name: bounce;

          animation-name: bounce;

          -webkit-animation-duration: 1.4s;

          animation-duration: 1.4s;

          -webkit-animation-timing-function: ease-in-out;

          animation-timing-function: ease-in-out;

          -webkit-animation-iteration-count: infinite;

          animation-iteration-count: infinite;

          top: -9.5vmin;

          left: -31.5vmin;

          }

          .head .eyes-two:before {

          content: "";

          position: absolute;

          width: 9.2vmin;

          height: 9.2vmin;

          background: #1f2033;

          top: 1.8vmin;

          left: 3.9vmin;

          border-radius: 50%;

          }

          .head .smile {

          -webkit-animation-name: bounces;

          animation-name: bounces;

          -webkit-animation-duration: 1.4s;

          animation-duration: 1.4s;

          -webkit-animation-timing-function: ease-in-out;

          animation-timing-function: ease-in-out;

          -webkit-animation-iteration-count: infinite;

          animation-iteration-count: infinite;

          position: absolute;

          top: 0;

          right: 0;

          bottom: 0;

          left: 0;

          margin: auto;

          width: 8vmin;

          height: 2vmin;

          background: none;

          left: -13.5vmin;

          top: 11.8vmin;

          border-bottom: 1vmin solid black;

          border-left: 1vmin solid black;

          border-right: 1vmin solid black;

          border-radius: 0 0 15vmin 15vmin;

          }

          @-webkit-keyframes up-down {

          0% {top: 2vmin;}

          25% {top:0vmin;}

          50% {top: 2vmin;}

          75% {top: 0vmin;}

          100% {top: 2vmin;}

          }

          @keyframes up-down {

          0% {top: 2vmin;}

          25% {top:0vmin;}

          50% {top: 2vmin;}

          75% {top: 0vmin;}

          100% {top: 2vmin;}

          }

          @-webkit-keyframes bounce {

          0% {top: -2vmin;}

          25% {top: -12vmin;}

          50% {top: -2vmin;}

          75% {top: -12vmin;}

          100% {top: -2vmin;}

          }

          @keyframes bounce {

          0% {top: -2vmin;}

          25% {top: -12vmin;}

          50% {top: -2vmin;}

          75% {top: -12vmin;}

          100% {top: -2vmin;}

          }

          @-webkit-keyframes bounces {

          0% {top: 15vmin;}

          25% {top: 5vmin;}

          50% {top: 15vmin;}

          75% {top: 5vmin;}

          100% {top: 15vmin;}

          }

          @keyframes bounces {

          0% {top: 15vmin;}

          25% {top: 5vmin;}

          50% {top: 15vmin;}

          75% {top: 5vmin;}

          100% {top: 15vmin;}

          }

          效果如下:

          總結

          其實大家看完會發現,css3動畫可以實現很多有趣的效果,有興趣的同學可以試著去寫寫


          主站蜘蛛池模板: 看电影来5566一区.二区| 亚洲AV无码一区二区乱孑伦AS| 国产一区二区三区美女| 无码一区二区三区AV免费| 国产精品日韩一区二区三区| 精品无码一区在线观看| 一区二区国产在线播放| 亚洲色一区二区三区四区| 鲁丝片一区二区三区免费| 国产福利电影一区二区三区,亚洲国模精品一区 | 精品无码人妻一区二区三区品| 精品一区二区三区中文| 日韩一区二区三区免费播放| 亚洲日韩激情无码一区| 国产午夜精品片一区二区三区| 国产一区在线mmai| 立川理惠在线播放一区| 久久精品国产一区| 精品视频一区在线观看| 国产精品特级毛片一区二区三区| 亚洲一区二区三区无码国产| 无码毛片一区二区三区中文字幕| 狠狠色婷婷久久一区二区 | 亚州AV综合色区无码一区| 亚洲美女高清一区二区三区| 亚拍精品一区二区三区| 成人免费一区二区三区| 国产激情一区二区三区在线观看| 性色AV一区二区三区| 国产vr一区二区在线观看| 国产一区二区三区美女| 亚洲AV无码国产一区二区三区 | 国产精品无码AV一区二区三区| 日本一区二区三区爆乳| 78成人精品电影在线播放日韩精品电影一区亚洲 | 日本不卡一区二区视频a| 亚洲日韩国产欧美一区二区三区 | 精品无码人妻一区二区三区| 久久久综合亚洲色一区二区三区 | 国产午夜毛片一区二区三区| 国产一区高清视频|