欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

使用純css實現(xiàn)賽車loader動畫效果的方法-創(chuàng)新互聯(lián)

使用純css實現(xiàn)賽車loader動畫效果的方法?這個問題可能是我們?nèi)粘W(xué)習(xí)或工作經(jīng)常見到的。希望通過這個問題能讓你收獲頗深。下面是小編給大家?guī)淼膮⒖純?nèi)容,讓我們一起來看看吧!                                                       

新縣ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!效果預(yù)覽

使用純css實現(xiàn)賽車loader動畫效果的方法

源代碼下載

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

代碼解讀

定義 dom,容器中包含 1 個.car元素,它的 2 個子元素分別代表車身和車輪:

<figure class="loader">
    <div class="car">
        <span class="body"></span>
        <span class="wheels"></span>
    </div>
</figure>

居中顯示:

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

定義容器尺寸和車的顏色:

.loader {
    width: 11.7em;
    height: 4.2em;
    color: lightcyan;
    position: relative;
}

畫出底盤:

.car {
    position: absolute;
    width: inherit;
    height: 2em;
    background-color: currentColor;
    top: 1.5em;
    border-radius: 0 5em 1em 0 / 0 4em 1em 0;
}

畫出尾冀:

.car::before {
    content: '';
    position: absolute;
    width: 0;
    height: 0;
    border: 0.6em solid transparent;
    border-left-width: 0;
    border-right-color: currentColor;
    transform-origin: left;
    transform: rotate(-45deg);
    top: -0.5em;
}

(這時看起來有點兒像飛機,哈哈~~)

畫出車身:

.body {
    position: absolute;
    width: 7.5em;
    height: 3.5em;
    box-sizing: border-box;
    border: 0.4em solid;
    border-radius: 3em 4.5em 0 0 / 3em 4em 0 0;
    top: -1.5em;
    left: 1.2em;
}

用偽元素畫出車窗:

.body::before {
    content: '';
    position: absolute;
    width: 3.5em;
    height: inherit;
    background-color: currentColor;
    border-top-left-radius: inherit;
    left: -0.4em;
    top: -0.4em;
}

畫出車輪的輪廓:

.wheels::before,
.wheels::after {
    content: '';
    position: absolute;
    box-sizing: border-box;
    width: 2.6em;
    height: 2.6em;
    background-color: #333;
    border-radius: 50%;
    bottom: -1em;
}

畫出輪轂:

.wheels::before,
.wheels::after {
    border: 0.3em solid #333;
    background-image: 
        linear-gradient(
            135deg,
            transparent 45%,
            currentColor 46%, currentColor 54%,
            transparent 55%
        ),
        linear-gradient(
            90deg,
            transparent 45%,
            currentColor 46%, currentColor 54%,
            transparent 55%
        ),
        linear-gradient(
            45deg,
            transparent 45%,
            currentColor 46%, currentColor 54%,
            transparent 55%
        ),
        linear-gradient(
            0deg,
            transparent 45%,
            currentColor 46%, currentColor 54%,
            transparent 55%
        ),
        radial-gradient(
            currentColor 29%,
            transparent 30%, transparent 50%,
            currentColor 51%
        );
}

把車輪定位到左右兩側(cè):

.wheels::before {
    left: 1.2em;
}

.wheels::after {
    right: 0.8em;
}

接下來制作動畫效果。

增加表示風(fēng)影的 dom 元素.strikes,它包含 5 個子元素:

<figure class="loader">
    <p class="car">
        <span class="body"></span>
        <span class="wheels"></span>
    </p>
    <p class="strikes">
        <span></span>
        <span></span>
        <span></span>
        <span></span>
        <span></span>
    </p>
</figure>

畫出 5 段短細(xì)線:

.strikes {
    position: absolute;
    width: 1em;
    height: inherit;
    border: 1px dashed white;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.strikes span {
    height: 0.1em;
    background-color: lightcyan;
}

增加風(fēng)影飄逝的動畫效果,定義 css 變量,設(shè)置動畫延時:

.strikes span {
    animation: drift 0.2s linear infinite;
    animation-delay: calc((var(--n) - 1) * 0.05s);
}

@keyframes drift {
    from {
        transform: translate(3.5em);
    }

    to {
        transform: translate(-8em);
        filter: opacity(0);
    }
}

.strikes span:nth-child(1) {
    --n: 1;
}

.strikes span:nth-child(2) {
    --n: 2;
}

.strikes span:nth-child(3) {
    --n: 3;
}

.strikes span:nth-child(4) {
    --n: 4;
}

.strikes span:nth-child(5) {
    --n: 5;
}

增加輪子轉(zhuǎn)動動畫效果:

.wheels::before,
.wheels::after {
    animation: rotating 0.5s linear infinite;
}

@keyframes rotating {
    to {
        transform: rotate(1turn);
    }
}

增加車身顛簸的動畫效果:

.car {
    animation: run 0.25s linear infinite;
}

@keyframes run {
    0% {
        transform: translate(0.2em, 0.1em) rotate(0deg);
    }

    20% {
        transform: translate(0.1em, 0.2em) rotate(1deg);
    }

    40% {
        transform: translate(0.1em, -0.1em) rotate(-1deg);
    }

    60% {
        transform: translate(-0.1em, 0.2em) rotate(0deg);
    }

    80% {
        transform: translate(-0.1em, 0.1em) rotate(1deg);
    }

    100% {
        transform: translate(0.2em, 0.1em) rotate(-1deg);
    }
}

大功告成!

感謝各位的閱讀!看完上述內(nèi)容,你們對使用純css實現(xiàn)賽車loader動畫效果的方法大概了解了嗎?希望文章內(nèi)容對大家有所幫助。如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)網(wǎng)站制作公司行業(yè)資訊頻道。

分享文章:使用純css實現(xiàn)賽車loader動畫效果的方法-創(chuàng)新互聯(lián)
標(biāo)題URL:http://aaarwkj.com/article24/ccpije.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣品牌網(wǎng)站制作、自適應(yīng)網(wǎng)站、建站公司、App開發(fā)、營銷型網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
精品视频一区二区三区中文字幕| 亚洲精品视频久久偷拍| 欧美一区二区亚洲天堂| 福利午夜福利在线观看| 强乱人妻中文字幕日本| 欧美日韩另类综合久久久| 精品亚洲综合一区二区| 欧美精品国产一区二区免费| 亚洲黄色艳情视频录像| 激情网站免费在线观看| 日韩有码大片最新自拍| 亚洲国产欧美日韩久久| 亚洲国产精品一区二区电影| 99久久免费热在线观看| 亚洲一区二区午夜福利亚洲| 日本经典三级在线视频| 人妻免费视频中文字幕| 韩国av在线免费观看| 国产乱子一区二区三区| 午夜一区二区三区精品| 国产av专区久久伊人亚洲| 精品一区二区视频在线观看网站| 亚洲日本精品国产第一区| 九色国产一区二区三区| 99亚洲综合一区二区三区| 亚洲欧洲精品专线九九| 91好色视频在线观看| 年轻的母亲韩国三级| 精品国产av一区蜜臀av| 免费人成网站在线观看| 国产精品国产三级专区| 精品欧美熟妇高潮喷水特黄| 日本高清免费观看一区| 亚洲av一本岛在线播放| 91嫩草国产在线观看| 国产尹人99大香蕉| 亚洲男人成人性天堂网站| 亚洲精品日韩av专区| 国产精品黄色片在线观看| 久久精品亚洲夜色国产av| 午夜啪视频免费在线观看|