當(dāng)需要在網(wǎng)頁(yè)中實(shí)現(xiàn)文字無(wú)縫持續(xù)滾動(dòng)時(shí),可以借助CSS動(dòng)畫來(lái)實(shí)現(xiàn)。常見(jiàn)的應(yīng)用場(chǎng)景是在新聞網(wǎng)站上的“滾動(dòng)新聞條”或者播報(bào)天氣等實(shí)時(shí)數(shù)據(jù)的時(shí)候。
.marquee { width: 100%; overflow: hidden; white-space: nowrap; animation: marquee 15s linear infinite; } @keyframes marquee { 0% { transform: translateX(0); } 100% { transform: translateX(-100%); } }
上述CSS代碼中,我們?yōu)榘淖謨?nèi)容的元素(比如div)設(shè)置了寬度為100%和overflow:hidden,這樣就能夠讓文字內(nèi)容處于容器的可見(jiàn)區(qū)域內(nèi),并且超出部分被隱藏。由于文字內(nèi)容需要在容器內(nèi)不斷滾動(dòng),我們?cè)O(shè)置了white-space: nowrap,這樣文字就會(huì)在水平方向上持續(xù)滾動(dòng)。最后,通過(guò)使用animation屬性實(shí)現(xiàn)動(dòng)畫效果。在我們的代碼中,我們使用了一個(gè)名為marquee的關(guān)鍵幀動(dòng)畫,總時(shí)長(zhǎng)為15s,執(zhí)行方式為線性,無(wú)限循環(huán)。關(guān)鍵幀動(dòng)畫中設(shè)置了不同時(shí)間點(diǎn)下的transform屬性,來(lái)實(shí)現(xiàn)文字在容器內(nèi)的滾動(dòng)效果。
以上就是利用CSS實(shí)現(xiàn)文字無(wú)縫持續(xù)滾動(dòng)的基本代碼。根據(jù)不同的項(xiàng)目需求,我們可以對(duì)樣式進(jìn)行更加細(xì)致的調(diào)整,比如增加滾動(dòng)速度、修改動(dòng)畫持續(xù)時(shí)間等。總的來(lái)說(shuō),CSS動(dòng)畫是實(shí)現(xiàn)此類效果的比較便捷、高效的方法,也是前端開(kāi)發(fā)中不可缺少的技術(shù)。