<span id="mktg5"></span>

<i id="mktg5"><meter id="mktg5"></meter></i>

        <label id="mktg5"><meter id="mktg5"></meter></label>
        最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
        問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
        當前位置: 首頁 - 科技 - 知識百科 - 正文

        如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼)

        來源:懂視網 責編:小采 時間:2020-11-02 22:07:54
        文檔

        如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼)

        如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼):本篇文章給大家帶來的內容是關于如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。效果預覽源代碼下載https://github.com/comehope/front-end-daily-challenge
        推薦度:
        導讀如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼):本篇文章給大家帶來的內容是關于如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。效果預覽源代碼下載https://github.com/comehope/front-end-daily-challenge
        本篇文章給大家帶來的內容是關于如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

        效果預覽

        100607057-5b998ed9b6d5a_articlex.gif

        源代碼下載

        https://github.com/comehope/front-end-daily-challenges

        代碼解讀

        定義 dom,容器包含 2 個元素,branch 代表枝,leaves 代表葉,葉有 6 個子元素,代表 6 個葉片:

        <figure class="sapling">
         <div class="branch"></div>
         <div class="leaves">
         <span></span>
         <span></span>
         <span></span>
         <span></span>
         <span></span>
         <span></span>
         </div>
        </figure>

        居中顯示:

        body {
         margin: 0;
         height: 100vh;
         display: flex;
         align-items: center;
         justify-content: center;
         background-color: black;
        }

        定義容器尺寸,并設置子元素水平居中:

        .sapling {
         position: relative;
         width: 5em;
         height: 17.5em;
         font-size: 10px;
         display: flex;
         justify-content: center;
        }

        畫出樹枝:

        .branch {
         position: absolute;
         width: 0.2em;
         height: inherit;
         border-radius: 25%;
         background: burlywood;
        }

        定義樹葉容器,設置為葉片在垂直方向均勻分布,并且從下到上排列:

        .leaves {
         position: absolute;
         width: inherit;
         height: 15em;
         top: 1em;
         display: flex;
         flex-direction: column-reverse;
        }

        設置葉片的尺寸和和背景顏色:

        .leaves span {
         width: 2.5em;
         height: 2.5em;
         background-color: limegreen;
        }

        設置左右葉片的各自樣式:

        .leaves span:nth-child(odd) {
         border-bottom-left-radius: 3em;
         border-top-right-radius: 3em;
         transform-origin: right bottom;
         align-self: flex-start;
        }
        
        .leaves span:nth-child(even) {
         border-bottom-right-radius: 3em;
         border-top-left-radius: 3em;
         transform-origin: left bottom;
         align-self: flex-end;
        }

        至此,靜態效果繪制完成,接下來開始寫動畫腳本。
        引入 GSAP 庫:

        <script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/2.0.2/TweenMax.min.js"></script>

        聲明一個時間線對象:

        let animation = new TimelineMax();

        增加樹枝的入場動畫效果,并為這個動畫設置一個標簽 branch

        animation.from('.branch', 4, {scaleY: 0, ease: Power1.easeOut}, 'branch');

        增加樹葉的入場動畫效果,它的參數中有 3 個 0.5,從左到右的含義分別是動畫時長、多個葉片動畫的間隔時長、相對 branch 標簽動畫的延遲時間:

        animation.from('.branch', 4, {scaleY: 0, ease: Power1.easeOut}, 'branch')
         .staggerFrom('.leaves span', 0.5, {scale: 0, ease: Power1.easeOut}, 0.5, 0.5, 'branch');

        增加葉片變黃的動畫效果:

        animation.from('.branch', 4, {scaleY: 0, ease: Power1.easeOut}, 'branch')
         .staggerFrom('.leaves span', 0.5, {scale: 0, ease: Power1.easeOut}, 0.5, 0.5, 'branch')
         .to(['.branch', '.leaves span'], 3, {backgroundColor: 'yellow'});

        增加淡出效果:

        animation.from('.branch', 4, {scaleY: 0, ease: Power1.easeOut}, 'branch')
         .staggerFrom('.leaves span', 0.5, {scale: 0, ease: Power1.easeOut}, 0.5, 0.5, 'branch')
         .to(['.branch', '.leaves span'], 3, {backgroundColor: 'yellow'})
         .to(['.branch', '.leaves span'], 1, {autoAlpha: 0});

        修改聲明時間線的代碼,使動畫重復播放:

        let animation = new TimelineMax({repeat: -1, repeatDelay: 0.5});

        大功告成!

        聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

        文檔

        如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼)

        如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼):本篇文章給大家帶來的內容是關于如何使用CSS和GSAP實現樹枝發芽的loader動畫(附源碼) ,有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。效果預覽源代碼下載https://github.com/comehope/front-end-daily-challenge
        推薦度:
        標簽: flex 動畫 源代碼
        • 熱門焦點

        最新推薦

        猜你喜歡

        熱門推薦

        專題
        Top
        主站蜘蛛池模板: 国产精品亚洲精品爽爽| 国产成人精品日本亚洲网站 | 青青草国产免费国产是公开| 国产成人免费爽爽爽视频| 亚洲国产成人综合| 中文字幕免费视频一| 亚洲女人影院想要爱| 1000部羞羞禁止免费观看视频| 亚洲视频在线一区| 91精品免费不卡在线观看| 亚洲无圣光一区二区| 波多野结衣中文字幕免费视频| 亚洲av无码国产综合专区| 最近2019中文免费字幕| 亚洲heyzo专区无码综合| 四虎永久免费地址在线观看| 免费播放美女一级毛片| 亚洲日本在线观看视频| 三级网站在线免费观看| 亚洲综合亚洲国产尤物| 国产va免费精品观看精品| 亚洲精品国产综合久久久久紧| 国产亚洲福利一区二区免费看| 国产99精品一区二区三区免费 | 亚洲精品国产日韩无码AV永久免费网| 狠狠色婷婷狠狠狠亚洲综合| 久久精品国产影库免费看| 亚洲妓女综合网99| 免费jjzz在在线播放国产| a级男女仿爱免费视频| 亚洲成人动漫在线观看| 国产精品无码一二区免费 | 亚洲国产电影在线观看| 午夜一级毛片免费视频| 一区二区三区精品高清视频免费在线播放 | 亚洲成在人线中文字幕| 午夜免费福利网站| a在线免费观看视频| 亚洲国产成人资源在线软件| 亚洲人午夜射精精品日韩| 桃子视频在线观看高清免费视频|