В CSS, для позиционирования фонового изображения в контейнере, мы используем свойство background-position.
Свойство можно задать отдельно для оси X и Y, кроме того можно задать 2, 3 или 4 параметра.
Классический случай — позиционирование с прилеганием к одной из сторон контейнера или по его центру. Для этого достаточно передать два параметра.
В общем виде синтаксис следующий:
background-position: [left | center | right | <проценты> | <размер>] || [top | center | bottom | <проценты> | <размер>]
Так мы можем задать либо относительное положение (left, top, center), либо абсолютное положение фона (в процентах или единицах вроде px, em, ..)
Будет валидным и такой вариант:
1 |
background-position: center; |
Он задаст центровку по обеим осям сразу.
Задать позиционирование отдельно по осям можно, используя background-position-x и background-position-y.
1 |
background-position-x: center; |
Позиционирование фона относительно правого края контейнера
Относительно левого края вы можете задать отступ фона, просто указав абсолютные величины. Как указать отступ относительно правого края?
Для этого нужно использовать следующий формат записи:
1 2 3 4 |
// рабочий вариант - смещение 10 пикседей от правого края: background-position: right 10px center; // так работать не будет: background-position-x: right 10px; |
К сожалению, отдельно по осям расширенный формат записи пока не поддерживается.
Позиционирование фона относительно нижнего края контейнера
Аналогично предыдущему примеру работает позиционирование относительно нижней границы:
1 2 3 4 |
// рабочий вариант - смещение 10 пикседей от нижнего края: background-position: center bottom 10px; // а так работать не будет: background-position-y: bottom 10px; |