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

使用純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ā)公司
一区二区在线视频国产| 视频在线观看亚洲午夜福利| 一区二区欧美日韩91| 亚洲久久精品中文字幕| 中文字幕日韩高清乱码| 欧美日韩国产这里只有精品| 成人粉嫩av一区二区白浆| 久久精品国语少妇对白| 日本区一区二区三高清视频| 国产91高清视频在线观看| 久久99久久久国产精品| 欧美日韩在线高清一区二区| 亚洲男人天堂超碰在线| 欧美日韩一级一区二区三区| 91九色中文视频在线观看| 国产在线精彩视频自拍| 欧美日韩亚洲中文二区| 精品熟女少妇av免费观看| 欧美二区三区精品在线| 亚洲中文自偷自拍另类| 日本精品专区在线观看| 免费成人自拍偷拍视频| 日韩国产精品视频二区| av一级免费在线观看| 日产精品一级二级三级爱| 国产中文字幕一区久久| 日韩不卡在线观看免费| 国产模特一区二区三区| 国产精品欧美日韩一区| 中文字幕有码精品在线| 中文字幕日韩在线欧美一区| 国产精品久久久天美传媒| 亚洲七七久久精品中文国产| 国产精品毛片一区二区三| 人妻口爆视频一区二区三区| 欧美日韩亚洲综合在线| 国产原创剧情免费观看av| 亚洲禁看av一区不卡| 亚洲华人在线免费视频| 欧美福利在线观看视频| 成熟女人毛茸茸的视频|