Чтобы создать меню с анимированными кнопками, можно следовать такому алгоритму на примере анимированной бургер-кнопки: 1
Ещё один вариант анимации без JavaScript. 1 Нужно заменить button на label и добавить ему атрибут for со значением burger-checkbox. 1 Также перед label добавить input с типом checkbox, идентификатором и классом burger-checkbox. 1 Теперь при нажатии на label будет срабатывать чекбокс. 1 Сам чекбокс нужно скрыть и при помощи псевдокласса :checked и комбинатора + изменять стиль активной кнопки, когда чекбокс выбран. 1
Для создания более сложного анимированного меню также можно использовать HTML, CSS и JavaScript. 2