Основное требование в задании - равномерное распределение элементов по ширене контейнера. В старом варианте элементы располагались неравномерно и справа получалась "ступенька". Так же была проблема с выпадающими списками большого объёма - они часто вылазили, не только за пределы контейнера, но и за пределы экрана. Так же большие выпадающие списки часто распределялись по столбцам неравномерно.
Дополнительным требованием было, чтоб выбранные значения фильтрации отображались непосредственно под названиями параметров.
Еще, в старом варианте фильта, был нелостаток - выпадающие списки открывались только при нажатии на само название параметра фильтрации, а нажатия на облоасть вокруг - ни к чему не приводили. Ещё одно требование слово "товар", возле кнопки "показать" должно склоняться, в зависимости от найденого кол-ва товаров.
В итоге получилось: параметры распределены равномерно, выпадающие списки не вылазят за пределы контейнера, в больших списках перечень значений распределён равномерно по столбцам, выбранные значения отображаются, списки открываются по клику на область вокруг названия параметра, слово "товар" - склоняется.
Всё работает через ajax. На видео - видно.