Свойство background
позволяет установить фоновое изображение, цвет фона и другие свойства стиля для заданного элемента.
background
также объединяет в себе несколько других свойств:
background-color
— задаёт цвет фона элемента;background-image
— устанавливает фоновое изображение для элемента;background-position
— определяет начальную позицию фонового изображения;background-repeat
— указывает, должно ли фоновое изображение повторяться;background-size
— устанавливает размер фонового изображения;background-attachment
— определяет, будет ли фоновое изображение прокручиваться вместе с содержимым элемента.
Синтаксис
selector {
background: [значение];
}
Значения и примеры использования
Background-color
Свойство background-color
задаёт цвет фона элемента. Значение задаётся в виде hex-кодов, RGB-функций или названий цветов:
background-color: #FFA500; /* Оранжевый цвет фона с помощью hex-кода */
background-color: rgb(255, 0, 0); /* Красный цвет фона с помощью RGB-значения */
background-color: rgba(255, 0, 0, 0.5); /* Полупрозрачный красный фон с помощью RGBA-значения */
background-color: white; /* Цвет фона с помощью ключевого слова */
background-color: transparent; /* Прозрачный фон */
background-color: inherit; /* Наследует цвет фона */
.options {
background-color: #DA70D6;
}
Background-image
Свойство background-image
позволяет задать изображение в качестве фона элемента. Это может быть любой тип изображения, включая jpeg, png, gif, svg и другие. Значение этого свойства указывается в формате URL, который ссылается на изображение.
.image-section {
height: 300px;
background-image: url("./images/nunzio-guerrera-uWZL-6wsUt4-unsplash.jpg");
background-size: cover;
background-position: center;
}
Также есть возможность использовать несколько изображений для фона. Для этого нужно указать несколько значений url()
через запятую. При этом каждое изображение будет располагаться друг над другом, начиная с первого указанного значения.
Background-repeat
Свойство background-repeat
определяет, как фоновое изображение будет повторяться внутри элемента, когда оно меньше размера элемента.
background-repeat
может принимать следующие значения:
repeat
— изображение будет повторяться как по горизонтали, так и по вертикали (это значение является значением по умолчанию).repeat-x
— изображение повторяется только по горизонтали.repeat-y
— изображение повторяется только по вертикали.no-repeat
— изображение будет отображаться только один раз.
section {
height: 200px;
background-image: url("./images/image.jpg");
background-repeat: repeat;
color: #070707;
}
Background-position
Свойство background-position
устанавливает позицию фона. Задаётся в процентах или пикселях относительно верхнего левого угла элемента. Чтобы выровнять центральную часть фонового изображения по центру элемента, можно использовать значение 50% 50%
, где первое значение указывает позицию по горизонтали, а второе по вертикали.
.position {
background-image: url("./images/image.jpg");
background-size: cover;
background-position: 50% 50%;
padding: 50px;
color: #ffffff;
}
Background-size
Свойство background-size
позволяет установить размеры фонового изображения. Значение может быть указано в пикселях, процентах, которые рассчитываются от размера элемента, или любых других доступных для CSS единицах измерения. Также можно указать ключевое слово:
auto
— значение по умолчанию и оно указывает на то, что размер фонового изображения должен быть равен его исходному размеру.cover
— фоновое изображение будет растянуто по всей ширине и высоте элемента, что приведет к обрезанию изображения, если его размеры не соответствуют размерам элемента. При этом гарантируется, что весь элемент будет полностью заполнен изображением.
.image-section {
height: 300px;
background-image: url("./images/image.jpg");
background-size: cover;
background-position: center;
}
contain
— фоновое изображение будет изменено пропорционально, чтобы подходить размеру элемента, что гарантирует, что вся картинка будет видна в элементе. Однако возможно оставление пустых областей с двух сторон элемента.
.image-section {
height: 300px;
background-image: url("./images/image.jpg");
background-size: contain;
background-position: center;
}
Background-attachment
Свойство background-attachment
указывает, будет ли фон элемента прокручиваться вместе с содержимым страницы или останется на месте.
Значения свойства:
scroll
— фоновое изображение прокручивается вместе с элементом, как обычный фон.fixed
— фоновое изображение остается на месте, когда элемент прокручивается.local
— фоновое изображение фиксируется с учётом поведения элемента. Если элемент имеет прокрутку, то фон будет прокручиваться вместе с содержимым, но фон, выходящий за рамки элемента, остаётся на месте.
.image-section {
height: 300px;
background-image: url("./images/image.jpg");
background-size: contain;
background-attachment: fixed;
}
Нюансы
Если одновременно установлены background-color
и background-image
, то background-image
будет отображаться поверх цвета фона.
Если установлен background-attachment: fixed
, то позиционирование фона осуществляется относительно окна браузера, а не относительно элемента, на который установлен фон.
.image-section {
height: 300px;
background-image: url("./images/image.jpg");
background-size: cover;
background-position: 50% 50%;
background-attachment: fixed;
}
Если значение background-size
указано в процентах, то размер изображения будет задаваться относительно размера элемента.