Смотри в сторону параметров css:
display: table-cell (обеспечивает для
div такое же поведение, как и для
td; в частности, автоматическое выравнивание по высоте стоящих в одной строке div'ов). И
display: flex (это вообще принципиально новый механизм html-вёрстки) -
frontender.info/a-guide-to-flexbox
Еще очень простой, но ограниченный по возможностям механизм:
display: inline-block. Вполне подойдёт, если между ячейками нет рамок.