tiroman, все технологии устаревают, панацеи нет. Не тешу себя иллюзиями. Поинт был в том, что у гугла есть компетенция развивать этот стек, на равных конкурировать с Реактом и получается даже отвоевывать рынок. Популярность технологии говорит о деверии к ней. Я не думаю что гугл забросит их.
Даже не знаю, думаю на ccs без флексбоксов это будет костылем %) Еще смотря в каком контексте это все должно быть, какой внешний контейнер у меню(ограничение по ширине). Много факторов короче.
у вас оба меню контентозависимые, т.е. сколько внутри текста и айтемов на столько широкое оно и будет. Если надо прямо ровно делать то это переверстывать надо, например на flexbox можно
<input type="hidden" name = "form-id" value="...Номер формы(например 1, для 1 формы)...">
Далее на сервере ловите переменную $form-id = trim($_POST["form-id"]);
и добавляете ее в строку $message лил $pagetitle. И получается в письме получите нужный айди формы
SM: ну так в чем проблема, посылаете нужную информацию на сервер, а сервер(в вашем случае php скрипт) составляет запрос почтовый запрос(письмо) со всей нужной информацией. Короче это уже на стороне сервера нужно ловит и добавлять данные к письму
SM: как вариант можно в форме добавить скрытое поле(input hidden) с данными о форме(id name или еще что-то..) и код можно не менять, на сервер полетит запрос с этим полем и однозначно можно будет узнать с какой формы запрос
Да Ну: ну раз уж вы используете конкретные изменения допустим ширины можно это оптимизировать так "transition: width .3s ease-in-out;" т.е. в место all пишите конкретно что меняется. если несколько свойств то допустим так "transition: background ease .2s, color ease .2s;" через запятую. Еще модно вместо изменения width использовать transform: scale(); или transform: translate3d(); они по идее более оптимизированы в следствии чего у вас фпс не будет просаживаться