Если правильно комбинировать js и css то можно даже делать 3d фигуры.
Ecли нужно чтобы css transition работал при изменении блока можно объявить селектор (в виде класса) и записать туда свойства которые нужно добавить или изменить и с помощью метода classList.toggle('className') добавить или удалить соответствующий класс.
Собственно тип селектора может быть любой, не только классы, советую попрактиковаться в смахивании блоков с одного селектора на другой, это очень классный прием.