When I first found out about the CSS animation, I was amazed by how much you can achieve very impressive results without even using JavaScript.
So I decided to get to know about keyframe animation.
The logic of behind it is to define the animation via @keyframe property. Then assign the defined animation via a CSS class to the HTML element. In this example, I used transform and scale properties to make the dots move.
Moreover, it is possible to use variables as values for transformation. Here I created three classes with different variables for the end values of animation. I assigned the classes to different dots in HTML to make them move differently.
The topic of animations is also covered in this amazing video.