所以我最近在做一些私人項目,因爲我是一個巨大的CSS粉絲,我想在CSS中而不是在JavaScript中完成大部分動畫。CSS在div容器中從左到右動畫文字,隱藏溢出
今天,我想創造這樣的事情: Text moving from left to right
我想這可能是可能的CSS動畫。理論上,我有一個div封裝,位置:相對,固定寬度和溢出:隱藏。在裏面,有一個div位置:absolute,left:0和bottom:0。現在在某些情況下,文本對於父div來說太長了,我想讓文本文本通過父div來「浮動」:實際上將div從左邊:0移動到右邊:0。
我偶然發現了一些CSS動畫和對孩子的div試過這種
@keyframes floatText{
from {
left: 0;
}
to {
right: 0;
}
}
。當然這沒有奏效。動畫類似於左側:0到左側:-100像素,但是這並不能確保整個文本的可見性,當它比這些額外的100px長時。有沒有一個很好的和乾淨的方式來完成這項工作?當然,JavaScript可能會推動這一期望的功能。但我想知道是否有辦法在純CSS中做到這一點。
在此先感謝!
編輯:
要clearify我有什麼在我的腦海,我創建了一個GIF顯示什麼,我想用CSS動畫來完成: Animated
正如你看到的,我們有三有些名稱可以直接適用,有些名稱可能太長,應該前後移動,所以用戶可以閱讀它:)!
再次感謝!
EDIT2:
有沒有辦法來完成這樣的事情?
@keyframes floatText{
from {
left: 0px;
}
to {
left: (-this.width+parent.width)px;
}
}
這將是最終的解決辦法,我知道這種編碼是不可能在CSS,但也許有些CSS3調整像鈣()或東西嗎?我出出主意吧:(
謝謝您的回答,但這並不工作了。除了不流暢之外,當文本變得更長時,這也不能確保足夠的文本滾動。 ( – SunTastic
)如上所述,您可以通過添加更多的%和px值來使動畫更加流暢。要在@keyframes選擇器中進一步滾動,只需添加更多具有更高px值的%值。 –