Così ho recentemente lavorato su un progetto privato, e siccome sono un grande fan dei CSS, voglio fare la maggior parte delle animazioni in CSS piuttosto che in JavaScript.CSS Animare il testo da sinistra a destra in un contenitore div con overflow nascosto
Oggi ho voluto creare qualcosa di simile: Text moving from left to right
Penso che questo potrebbe essere possibile con animazioni CSS. In teoria, ho un wrapper div con posizione: relativo, larghezza fissa e overflow: nascosto. All'interno, c'è un div con posizione: assoluta e sinistra: 0 e inferiore: 0. Ora, in alcuni casi, il testo è troppo lungo per il div genitore, e volevo lasciare che il testo del testo "fluttuasse" attraverso il div genitore: in realtà l'animazione del div da sinistra: 0 a destra: 0.
mi sono imbattuto su alcune animazioni CSS e provato questo
@keyframes floatText{
from {
left: 0;
}
to {
right: 0;
}
}
sul div bambino. E ovviamente questo non ha funzionato. Animazioni come da sinistra: da 0 a sinistra: -100px funzionano, ma ciò non garantisce che l'intero testo sia visibile, quando è più lungo di quei 100 px aggiuntivi. C'è un modo carino e pulito per farlo funzionare? Sicuramente JavaScript potrebbe oscurare questa funzionalità desiderata. Ma volevo sapere se c'è un modo per farlo in puro CSS.
Grazie in anticipo!
EDIT:
Per clearify quello che ho in mente, ho creato un gif visualizzazione di quello che voglio realizzare con le animazioni CSS: Animated
Come potete vedere, abbiamo tre di questo tipo uno accanto all'altro, alcuni hanno un nome che si adatta direttamente, altri potrebbero essere troppo lunghi e dovrebbero essere animati avanti e indietro, in modo che l'utente possa leggerlo :)!
Grazie ancora!
EDIT2:
C'è un modo per ottenere qualcosa di simile?
@keyframes floatText{
from {
left: 0px;
}
to {
left: (-this.width+parent.width)px;
}
}
Questa sarebbe la soluzione definitiva, so che questo tipo di codifica non è possibile in CSS, ma forse con alcune modifiche CSS3 come calc() o qualcosa del genere? Sono fuori di idee ora :(
Grazie per la risposta, ma questo non lavorare fuori. Oltre a non essere liscio, questo non garantisce di scorrere il testo abbastanza lontano, quando diventa molto più lungo. :( – SunTastic
Puoi rendere l'animazione più fluida aggiungendo più valori di% e px, come ho notato sopra. Per farlo scorrere più lontano, all'interno del selettore @keyframes, aggiungi solo più valori% con un valore px maggiore. –