旋轉漸顯效果

前端入坑紀 02

剛剛看到這個需求時,表示一臉的懵逼啊!什么鬼,這TM是JavaScript做的吧!然而,細細研究一番后,發現果然這不是JavaScript的鍋,妥妥的Css啊。

OK,first things first!項目鏈接

HTML 結構
<p class="rotinOut">
    <span>我</span>
    <span>想</span>
    <span>靜</span>
    <span>靜</span>
</p>
關鍵 CSS 結構
p span {
    color:#00B9CC;
    opacity: 0;
}

p span:nth-child(1) {
    display: inline-block;
    animation: rotinOut1 6s ease-out infinite forwards
}

p span:nth-child(2) {
    display: inline-block;
    animation: rotinOut2 6s ease-out infinite forwards
}

p span:nth-child(3) {
    display: inline-block;
    animation: rotinOut3 6s ease-out infinite forwards
}

p span:nth-child(4) {
    display: inline-block;
    animation: rotinOut4 6s ease-out infinite forwards
}

@keyframes rotinOut1 {
    0% {
        opacity: 0;
        transform: rotateZ(0deg)
    }
    20%,
        90% {
        opacity: 1;
        transform: rotateZ(360deg)
    }
    100% {
        opacity: 0;
        transform: rotateZ(360deg)
    }
}

@keyframes rotinOut2 {
    0%,
        20% {
        opacity: 0;
        transform: rotateZ(0deg)
    }
    40%,
        90% {
        opacity: 1;
        transform: rotateZ(360deg)
    }
    100% {
        opacity: 0;
        transform: rotateZ(360deg)
    }
}

@keyframes rotinOut3 {
    0%,
        40% {
        opacity: 0;
        transform: rotateZ(0deg)
    }
    60%,
        90% {
        opacity: 1;
        transform: rotateZ(360deg)
    }
    100% {
        opacity: 0;
        transform: rotateZ(360deg)
    }
}

@keyframes rotinOut4 {
    0%,
        60% {
        opacity: 0;
        transform: rotateZ(0deg)
    }
    80%,
        90% {
        opacity: 1;
        transform: rotateZ(360deg)
    }
    100% {
        opacity: 0;
        transform: rotateZ(360deg)
    }
}
css 原理解說

由于是逐一間隔時間出現,而且還得循環效果。效果的重點就在時間差和循環上,animation-delay的延時執行動畫屬性只有第一次進入或刷新頁面才有效果,循環后就沒作用了。
筆者參考了百度后,終于明白這其中的關鍵點還是在于keyframes 的進度安排,給予每個字在不同進度時的效果就可以實現了。
圖示如下:

示意圖

Ps:My skill's not better enough! 如有錯漏,還請不吝賜教

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,536評論 25 708
  • 選擇qi:是表達式 標簽選擇器 類選擇器 屬性選擇器 繼承屬性: color,font,text-align,li...
    wzhiq896閱讀 1,806評論 0 2
  • 中國傳統香道可以說是我國的優良傳統,考古發現距今已有七千多年的歷史,文字記載也有五千多年。黃帝時期出過一道法令,叫...
    沉香花梨狂熱愛好者閱讀 2,961評論 2 17
  • Parts from the pastReminds me the time I spentWhile most ...
    vincia閱讀 515評論 0 0
  • 長途奔波回到家,與許久未見的閨蜜聯系,她告訴我10幾天前有了新男友。 她與前男友分手,是我最最想不到的事。我以為性...
    rie閱讀 445評論 0 4