Плавающий блок выпадает из родительского потока элемента и создает собственный контекст форматирования.
Контекст по умолчанию блочный, это значит лишь то, что внутренние элементы ведут себя как потомки блока (т.е. самым обычным образом, как мы привыкли). Этот контекст можно изменить, как я написал выше на flex/table/grid.
Но сам блок останется плавающим блоком.
Что касается самого свойства display, то оно интересно себя ведет, но вполне логично.
inline/inline-block становится равным block
flex/inaline-flex становится равным flex
table/inaline-table становится равным table
т.е. приводится к блочной модели, но с учетом контекста.