Развели срач на три страницы!
По вертикали центруется либо через таблицы (или table-cell) - но этот вариант крайне не рекомендуется (могут вылезти уже другие баги), хотя если высота блоков не известна - это единственный вариант. Если высота известна то лучше через позиционирование и top:50%;margin-top:-x/2.
Всё остальное (всякие дополнительные обёртки, inline-block и line-height) - специфическая ерунда, редко находящая применение.
По горизонтали, самое простое - родителю text-align:center.
|