Вертикальное центрирование сложнее горизонтального, потому что при вертикальном центрировании приходится явно задавать высоту родительского элемента, в то время как при горизонтальном центрировании ширина элемента, если не указана явно, обычно равна ширине экрана. 1
Кроме того, для вертикального центрирования нужно применять больше свойств, и важно ничего не пропустить, иначе блок будет выравниваться по одной из своих границ, а не по центру. 3
Также одна из сложных задач в CSS — центрирование и по вертикали, и по горизонтали одновременно, особенно когда неизвестны высота и ширина того, что нужно расположить по центру. 4