<abbr id="qgqeg"><source id="qgqeg"></source></abbr><li id="qgqeg"></li>
  • <center id="qgqeg"></center>
  • 400-650-7353

    申請了解web在線課程

    如何使用過渡動畫和關鍵幀動畫?

    中公優就業web前端培訓機構
    如何使用過渡動畫和關鍵幀動畫?
    一、CSS3 過渡

    transition

    css3的transition允許css的屬性值在一定的時間區間內平滑地過渡。這種效果可以在鼠標單擊、獲得焦點、被點擊或對元素任何改變中觸發,并圓滑地以動畫效果改變CSS的屬性值

    transition-property:檢索或設置對象中的參與過渡的屬性

    transition-duration:檢索或設置對象過渡的持續時間

    transition-delay:檢索或設置對象延遲過渡的時間

    transition-timing-function:檢索或設置對象中過渡的動畫類型

    貝塞爾曲線:

    屬性值:cubic-bezier()

    貝塞爾曲線網址:http://cubic-bezier.com/

    簡寫:transition:all/具體屬性值 運動時間s/ms 延遲時間s/ms 動畫類型

    最簡寫:transition:運動時間s/ms

    案例:懸停div,讓p標簽沿著x方向發生位移

    二、CSS3 幀動畫

    animation

    幀動畫是通過一幀一幀的畫面按照固定順序和速度播放,如電影膠片。可通過設置多個節點來精確控制一個或一組動畫,常用來實現復雜的動畫效果。

    語法:

    第一步:先用@keyframes 制定運動動畫的軌跡規則

    @keyframes myMove{

    from{初始狀態屬性}

    to{結束狀態屬性}

    }

    @keyframes myMove{

    0%{初始狀態屬性}

    100%{結束狀態屬性}

    }(中間再可以添加關鍵幀)

    備注:mymove是給動畫起的名字

    [page]

    第二步:用animation調用已制定的動畫的軌跡規則

    animation復合屬性。檢索或設置對象所應用的動畫特效。

    1.animation-name 檢索或設置對象所應用的動畫名稱

    說明:必須與規則@keyframes配合使用,eg:@keyframes mymove{} animation-name:mymove

    2.animation-duration 檢索或設置對象動畫的持續時間

    說明:animation-duration:3s; 動畫完成使用的時間為3s

    3.animation-timing-function 檢索或設置對象動畫的過渡類型

    說明:linear:線性過渡。等同于貝塞爾曲線(0.0, 0.0, 1.0, 1.0)

    ease:平滑過渡。等同于貝塞爾曲線(0.25, 0.1, 0.25, 1.0)

    ease-in:由慢到快。等同于貝塞爾曲線(0.42, 0, 1.0, 1.0)

    ease-out:由快到慢。等同于貝塞爾曲線(0, 0, 0.58, 1.0)

    ease-in-out:由慢到快再到慢。等同于貝塞爾曲線(0.42, 0, 0.58, 1.0)

    4.animation-delay 檢索或設置對象動畫延遲的時間

    說明:animation-delay:0.5s; 動畫開始前延遲的時間為0.5s)

    5.animation-iteration-count 檢索或設置對象動畫的循環次數

    說明:animation-iteration-count: infinite | number;

    infinite:無限循環

    number: 循環的次數

    6.animation-direction 檢索或設置對象動畫在循環中是否反向運動

    說明:normal:正常方向

    reverse:反方向運行

    alternate:動畫先正常運行再反方向運行,并持續交替運行

    alternate-reverse:動畫先反運行再正方向運行,并持續交替運行

    7.animation-play-state 檢索或設置對象動畫的狀態

    說明:animation-play-state:running | paused;

    running:運動

    paused: 暫停

    animation-play-state:paused; 當鼠標經過時動畫停止,鼠標移開動畫繼續執行

    簡寫:animation: name duration timing-function delay iteration-count direction fill-mode;

    案例: 刷新頁面,div沿著x方向運動

    代碼實現

    瀏覽器兼容處理:

    瀏覽器兼容處理

    三、animation和transition的區別

    相同點:都是隨著時間改變元素的屬性值。

    不同點:transition需要觸發一個事件(hover事件或click事件等)才會隨時間改變其css屬性; 而animation在不需要觸發任何事件的情況下也可以顯式的隨著時間變化來改變元素css的屬性值,從而達到一種動畫的效果,css3的animation就需要明確的動畫屬性值。

    這篇關于“如何使用過渡動畫和關鍵幀動畫?”的文章 已幫助 人,希望也能幫到你! 聲明:本站點發布內容未經許可不得轉載,如需轉載請聯系我們。
    >>本文地址:
    文章具體信息
    • 文章分類:技術提升 >
    • 文章來源:Web前端培訓問答
    • 發布時間:2020-12-30 11:59:44
    • 閱讀需要時間:本文字數1011,推薦閱讀時間2.5分鐘
    主站蜘蛛池模板: 苏尼特右旗| 原平市| 关岭| 灵寿县| 拉萨市| 浪卡子县| 东丰县| 平潭县| 如东县| 隆子县| 酒泉市| 镇安县| 万州区| 墨玉县| 平乡县| 保靖县| 文水县| 高碑店市| 丰城市| 荃湾区| 鹿泉市| 介休市| 枣强县| 台南市| 新郑市| 台东县| 孟津县| 衡阳县| 唐海县| 明光市| 巴彦淖尔市| 平定县| 鄱阳县| 尼勒克县| 永靖县| 读书| 望城县| 沾益县| 大名县| 渝北区| 沙坪坝区|