Как добавить фон на страницу. CSS background-image
- 20 мая 2023
background-image позволяет добавить изображение в качестве фона для выбранного элемента. Фоновое изображение может быть любого типа и повторяться или масштабироваться в зависимости от настроек.
Синтаксис
selector {
background-image: url("image.jpg");
}
Значения
url('путь_к_изображению')— указывает путь к изображению. Вы можете указать относительный путь к изображению на вашем сервере или абсолютный URL для изображения в интернете.none— значение по умолчанию, где нет фона. Если не хотите использовать изображение в качестве фона, вы можете установитьbackground-image: none;.linear-gradient(),radial-gradient(),repeating-linear-gradient(),repeating-radial-gradient()— создают градиент фона без использования изображений. Можно определить цветовую палитру и ориентацию градиента.
Повторное изображение
background-repeat: repeat; — значение по умолчанию, изображение повторяется по горизонтали и вертикали. Изображение будет заполнять фон элемента, повторяясь при необходимости.

background-repeat: repeat-x; — повторяется только по горизонтали.

background-repeat: repeat-y; — повторяется только по вертикали.

background-repeat: no-repeat; — отображается только один раз без повторения.

Размер изображения
background-size: auto; — отображается в своём естественном размере.

background-size: cover; — масштабируется так, чтобы полностью заполнить фон элемента, возможно, обрезая его.

background-size: contain; — масштабируется так, чтобы полностью поместиться в фон элемента без искажений. Белые полосы могут появиться по краям фона, если пропорции изображения и фона не совпадают.

Наследование
Свойство background-image не наследуется дочерними элементами. Каждый элемент должен самостоятельно задавать фоновое изображение.
Примеры использования
Добавление изображения на фон определённого элемента:
<div class="container">
<h1>Здесь паучок</h1>
</div>
.container {
width: 600px;
height: 300px;
background-image: url('01.jpg');
background-size: cover; /* размер одного повторяющегося изображения */
}
h1 {
color: white;
text-align: left;
padding: 100px;
}

Добавление повторяющегося изображения на фон элемента
<div class="container">
<h1>Здесь паучок</h1>
</div>
.container {
width: 600px;
height: 300px;
background-image: url('01.jpg');
background-repeat: repeat;
}
h1 {
color: white;
text-align: left;
padding: 100px;
}

Добавление градиента на фон
<div class="container">
<h1>Здесь нет паучка</h1>
</div>
.container {
width: 600px;
height: 300px;
background-image: linear-gradient(to right, #E2BCBB, #E4514A);
}
h1 {
color: black;
text-align: left;
padding: 100px;
}

Нюансы использования
- Фоновые картинки не будут автоматически масштабироваться под размеры родительского элемента. Если размеры картинки и родительского элемента не совпадают, то картинка обрежется или начнёт повторяться.
- Если задать цвет фона и
background-imageдля одного элемента, то картинка будет отображаться поверх цвета фона.
⭐ Поддержка браузерами свойства background-image
Материалы по теме
«Доктайп» — журнал о фронтенде. Читайте, слушайте и учитесь с нами.