Я пытаюсь создать сайт с фиктивным терминалом, который будет иметь вид набираемых линий, одна за другой. Я обнаружил анимацию CSS, которая отображает по одному символу за раз, но у меня возникают проблемы с задержкой анимаций каждой строки, чтобы они не появлялись не сразу.
Вот мой код:
//attempted javascript loop
// var code_lines =document.getElementsByClassName("line");
// for (i=0; i<=5; i++){
// code_lines:nth-child(i).style.animation = "typing 2.5s steps(30, end)";
// }
//attemped jquery loop
//$('#terminal_text').children('line').each(function () {
// for (i=0; i<=5; i++){
// i.style.animation = "typing 2.5s steps(30, end)";
//}
//});
.terminal {
width: 500px;
height: 500px;
background-color: black;
color: white;
padding: 20px;
}
.line {
white-space: nowrap;
overflow: hidden;
transform: translateY(-50%);
animation: typing 2.5s steps(30, end);
}
/* The typing effect */
@keyframes typing {
from { width: 0 }
to { width: 100% }
}
<div class="terminal">
<div id="terminal_text">
<p class="line"> Last login: </p>
<p class="line">megan-byers:~ designelixir$ git clone https://github.com/coloradical/Rae_Portfolio.git </p>
<p class="line">Cloning into 'Rae_Portfolio"...</p>
<p class="line">remote: Loading website illustrations: 172 objects, done.</p>
<p class="line">remote: Counting objects: 100% (172/172) done.</p>
</div>
</div>
Я настрою время, но сейчас я просто хочу, чтобы анимации запускались одна за другой. Мне трудно найти четкие примеры того, как использовать детей класса для применения анимации. Любое руководство будет с благодарностью!
Codepen: https://codepen.io/coloradical/pen/gOaMzjm