Najłatwiej chyba będzie gdy podzielisz sobie animacja na małe fragmenty i dokladnie rozpiszesz co się w nich dzieje:
Zakładając, że animacja składała się z następujących elementów:
a) główny div
b) tekst " Veryfing IP... " (z kropkami)
c) mały prostokąt, który będzie zasłaniał kropki i przesuwając się skokowo zmieniając swój margin lub wielkość i je odsłaniał (dzięki temu uzyskasz animacje migających kropek)
d) div w którym będzie znajdować się tekst kodu 1 (z overflow hidden)
e) sam tekst kodu 1 zmieniając jego górny margin na ujemny i wykorzystując overflow kontenera uzyskasz efekt przesuwania kodu jak z przykładu, który przesłałaś, przyda się też steps()
f) tekst " Checking location... " (z kropkami)
g) mały prostokąt, który będzie zasłaniał kropki i przesuwając się zmieniając swój margin lub wielkość i je odsłaniał (dzięki temu uzyskasz animacje migających kropek)
h) div w którym będzie znajdować się tekst kodu 2 (z overflow hidden)
i) sam tekst kodu 2 zmieniając jego górny margin i wykorzystując overflow kontenera uzyskasz efekt przesuwania kodu jak z przykładu, który przesłałaś przyda się też steps()
j) tekst connected (ramke uzyskasz przez border + padding)
Teraz trzeba się pozmożdżać co jest kiedy widoczne i przygotować poszczególne animacje, ważne, że display się nie animuje (przynajmniej z tego co wiem) i trzeba wykorzystywać height, opacity lub color aby uzyskać efekt, że coś jest niewidoczne.
Poniżej fragment jak mniej więcej bym to zrobił dla pierwszego tekstu i kodu.
<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<meta http-equiv='X-UA-Compatible' content='IE=edge'>
<title>Page Title</title>
<meta name='viewport' content='width=device-width, initial-scale=1'>
<style>
.screen {
background-color: #000;
height: 500px;
position: absolute;
width: 500px;
}
.text-ip {
animation: show-hidden-text-ip 8s linear infinite;
color: #0F0;
font-size: 20px;
margin-left: 20px;
margin-top: 20px;
position: relative;
}
.dots-hidden-box {
animation: display-dots 2s linear infinite;
background-color: black;
display: inline-block;
height: 5px;
margin-left: -15px;
width: 20px;
}
.code-1-box {
height: 380px;
margin-left: 20px;
margin-right: 20px;
margin-top: 20px;
overflow: hidden;
position: relative;
}
.code-1-text {
animation: move-code-1 8s steps(20) infinite;
color: #000;
margin-top: 0;
}
@keyframes show-hidden-text-ip {
0% {
color: #0F0;
}
49% {
color: #0F0;
}
50% {
color: #000;
height: 0;
}
100% {
color: #000;
height: 0;
}
}
@keyframes display-dots {
0% {
margin-left: -15px;
}
33% {
margin-left: -10px;
}
66% {
margin-left: -5px;
}
100% {
margin-left: 0px;
}
}
@keyframes move-code-1 {
0% {
margin-top: 0px;
color: #000;
}
49% {
color: #000;
}
50% {
color: #0F0;
}
99% {
color: #0F0;
}
100% {
color: #000;
margin-top: -900px;
}
}
</style>
</head>
<body>
<div class='screen'>
<p class='text-ip'>Veryfing IP...<span class='dots-hidden-box'></span></p>
<div class='code-1-box'>
<p class='code-1-text'>
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec nec felis feugiat augue ullamcorper
sodales a
vitae lorem. Curabitur quis magna at ligula tincidunt iaculis. Etiam vehicula lacinia ligula, ut
consequat
lectus hendrerit dictum. Etiam orci ex, tempor in consectetur sit amet, congue eget elit. Donec at arcu
ipsum. Phasellus bibendum justo a quam ultricies, vel volutpat erat consequat. Pellentesque sodales
euismod
nulla, non commodo neque vestibulum eget. Nulla nec sapien pharetra, pulvinar lacus eu, pretium odio.
Nam
vel quam finibus, tristique turpis sed, tempus lorem. Etiam at vulputate arcu. Integer quis eros ac
nulla
tincidunt pharetra et ac sem. Etiam mollis dapibus ultrices. Proin ac hendrerit leo, id luctus orci.
Fusce nisi sapien, tincidunt vel sollicitudin faucibus, pretium in est. Cras et ligula mattis,
vestibulum
metus et, porttitor tortor. Donec dui libero, sodales quis lorem sit amet, ullamcorper sollicitudin
nisi. Ut
convallis vehicula tellus, et rutrum lorem ullamcorper et. Ut sem sapien, ultricies at gravida non,
iaculis
eget odio. Ut vitae convallis neque. Donec eros nunc, vulputate et maximus faucibus, dapibus a eros.
In non orci vel nisi euismod luctus. Orci varius natoque penatibus et magnis dis parturient montes,
nascetur
ridiculus mus. Curabitur eu pharetra ante. Phasellus egestas id dolor quis eleifend. Aliquam non tellus
sapien. Duis justo lorem, elementum vitae egestas vitae, fermentum et odio. Donec ipsum felis, vulputate
ut
euismod in, rhoncus at urna. Donec in maximus orci, vel vehicula erat. In luctus eget sapien viverra
vestibulum. Proin semper, arcu non suscipit commodo, odio tortor elementum eros, a egestas tellus tellus
id
enim. Vestibulum vehicula vel neque ut suscipit. Nulla imperdiet felis non ultricies lacinia.
Nam viverra ullamcorper dui, eu tristique risus condimentum non. Morbi id urna quis mauris porttitor
imperdiet. Curabitur blandit at lectus a finibus. Donec vitae quam porttitor, dapibus nisl ultrices,
tempor
nisl. Pellentesque vel viverra odio. Sed luctus scelerisque vestibulum. Pellentesque non malesuada urna.
Aenean tincidunt, sapien id aliquam dignissim, eros nisi ullamcorper tellus, nec porta est justo id
lacus.
Donec non ullamcorper risus. Phasellus rutrum, ante sit amet tempus maximus, nunc leo sodales urna,
sollicitudin laoreet magna lectus maximus dolor. Praesent tempor semper lectus, viverra aliquet enim
sodales
vitae. Sed maximus in justo eget consequat. Vivamus porta eros ac lorem congue, et accumsan magna
tempor.
Suspendisse et varius nunc. Ut nec tortor ante. Nulla sagittis malesuada nibh, et interdum nisi.
Suspendisse
consequat metus euismod, posuere nisi nec, vulputate risus.
Nullam finibus lorem eu lorem commodo, eu rhoncus lacus euismod. Aliquam erat volutpat. Maecenas varius
euismod sollicitudin. Nullam iaculis sapien at mauris ultrices, vitae imperdiet magna sollicitudin.
Aenean
vehicula aliquam elit, non accumsan odio consequat sed. Ut aliquam, ligula et hendrerit blandit, lorem
nisi
tempor dolor, ut ullamcorper justo diam id nulla. Vivamus nec vulputate neque. Phasellus posuere tortor
ut
turpis porttitor mattis. Fusce vestibulum ligula sit amet augue maximus, non eleifend ex hendrerit.
Nullam
ultricies ex vitae turpis porttitor, vitae egestas ipsum egestas. In porta auctor nunc, eu vulputate
nisi
fermentum eu. Proin at aliquam justo. Proin eu sollicitudin urna. Duis dui lorem, laoreet posuere tellus
laoreet, iaculis faucibus metus. Donec est orci, blandit ac mattis quis, rutrum dapibus massa. In semper
viverra diam, et consequat erat sollicitudin vitae.
Cras mollis ex ac sollicitudin tempus. Pellentesque ultricies libero ante, vel ultrices lectus suscipit
a.
In pharetra viverra semper. Vestibulum fringilla laoreet erat, eu sollicitudin ante bibendum semper.
Phasellus faucibus enim neque, in tincidunt dui fermentum a. Phasellus dictum efficitur eros, eget
sollicitudin odio. Cras pulvinar ullamcorper euismod. Morbi at quam turpis. Vestibulum ornare arcu
neque, a
aliquet velit rhoncus ut. Fusce in molestie ipsum, in fringilla eros. Integer pretium gravida magna, vel
aliquet elit. Vivamus vitae libero a augue convallis luctus vel eget nisl.
Maecenas ullamcorper dignissim tortor vel pellentesque. Duis justo nisi, viverra a leo at, aliquam
consequat
mauris. Mauris scelerisque vestibulum nisl eget gravida. Maecenas viverra mollis magna, a pulvinar neque
accumsan eget. Nulla id odio sollicitudin, rhoncus massa nec, tincidunt dolor. Fusce a consectetur nisl,
et
hendrerit nisi. Morbi pharetra purus dolor. Aliquam gravida fringilla justo ut semper. Duis vitae purus
eget
nunc elementum facilisis quis sed erat. Mauris rutrum magna sed accumsan vehicula. Praesent interdum in
erat
a dictum.
</p>
</div>
</body>
</html>