все заслуга владельца этой ссылке @Sebastian Экстрем Link, пожалуйста, перейдите сквозь это. См. Его в действии codepen, , прочитав выше статью, я также купил демо-версию fiddle.
С помощью всего лишь трех строк CSS (за исключением префиксов поставщиков) мы можем с помощью transform: translateY вертикально центрировать все, что захотим, даже если мы не знаем его высоты.
Преобразование свойства CSS обычно используется для вращающихся и масштабирующих элементов, но с его функцией translateY мы можем теперь вертикально выравнивать элементы. Обычно это должно быть сделано с абсолютным позиционированием или настройками строчных высотой, но они требуют, чтобы либо знать высоту элемента или работают только на тексте однострочного и т.д.
Таким образом, чтобы сделать это, мы пишем:
.element {
position: relative;
top: 50%;
transform: translateY(-50%);
}
Это все, что вам нужно. Это метод, аналогичный методу абсолютной позиции, но с ростом, что нам не нужно устанавливать высоту элемента или свойства position на родительском. Он работает прямо из коробки, даже в IE9!
Чтобы сделать его еще более простым, мы можем записать это как примесь с его префиксы:
Не избежать требования использовать jsfiddle ссылку, поставив ложный код, вместо этого вы должны просто разместить код , –
@JoshPowell OKay спасибо. –