Проблема в том, что вы можете позиционировать фиксированный элемент с процентами или пикселями.Ни один из них не сделает правильный расчет смещения, чтобы сделать его действительно центрированным.Таким образом, вы должны отсортировать хак, чтобы заставить его вести себя правильно.
Позиционирование в процентах и смещение с отрицательными полями:
//assuming the block is 200px wide and 100px tall
.centered {
position: fixed;
top: 50%;
left: 50%;
margin-top: -50px;
margin-left: -100px;
}
В качестве альтернативы , вы можете центрировать егоисправление размещения контейнера, затем центрирование вашего объекта в этом контейнере (как упомянуто @rgthree), это также работает.