Как избавиться от переноса float, если заведомо не известна ширина блока?
Не понятно что вам нужно, но судя по упоминанию float вам к display: flex
Не пробовали для родительского блока поставить display:table; а для внутренних элементов поставить display:table-cell; ?