
Фоновое изображение позволяет выделить блок, задать визуальный акцент и сэкономить место по сравнению с использованием отдельных тегов. Для установки картинки применяется свойство background-image, которое принимает путь к файлу в формате url(). Изображение может располагаться в корне проекта, в отдельной папке или на удалённом сервере.
Чтобы избежать проблем с отображением, важно учитывать тип пути: относительный используется для файлов внутри проекта, абсолютный – для ресурсов по сети. При подключении локальных изображений стоит хранить их в папке /img или /assets и давать осмысленные имена, чтобы упростить поддержку кода.
После подключения фона можно управлять его масштабом, позицией, повторением и привязкой к области элемента. Эти настройки задаются через свойства background-size, background-position, background-repeat и background-attachment. Правильное сочетание этих параметров помогает добиться нужного вида на экранах с разным разрешением.
Подключение фонового изображения через background-image
Для установки фонового изображения используется свойство background-image с функцией url(). Внутрь скобок помещается путь к файлу, заключённый в кавычки. Пример подключения локального изображения:
background-image: url(«img/bg-header.jpg»);
Файл можно размещать в каталоге проекта, например /img. При вложенной структуре путь указывается относительно CSS-файла: url(«../img/bg-header.jpg»). В случае использования внешних ресурсов допускается указание полной ссылки, включая протокол:
background-image: url(«https://site.com/files/bg-header.jpg»);
Если фон задаётся для класса, правило размещается внутри селектора. Например:
.header { background-image: url(«img/bg-header.jpg»); }
Для ускорения загрузки стоит подбирать оптимальный формат. JPEG подходит для фотографий, PNG – для изображений с прозрачностью, WEBP помогает снизить вес файла. Названия файлов рекомендуется писать латиницей и без пробелов, чтобы избежать ошибок на серверах с чувствительностью к регистру.
Использование относительных и абсолютных путей к файлам

При подключении фонового изображения через background-image путь к файлу можно указать двумя способами: относительным и абсолютным. Относительный путь применяется для ресурсов внутри проекта и строится относительно расположения CSS-файла. Например, если картинка находится в папке /img на одном уровне с CSS, используется запись url(«img/bg.jpg»), а при размещении на уровень выше – url(«../img/bg.jpg»).
Абсолютный путь указывает полный адрес, включая домен: url(«https://site.com/assets/bg.jpg»). Такой вариант подходит для CDN и файлов, которые планируется загружать с внешних серверов. Абсолютные ссылки сохраняют доступность ресурса при переносе стилей в другую директорию, но требуют стабильного URL и увеличивают зависимость от сетевого соединения.
Чтобы избежать конфликтов, рекомендуется использовать относительные пути для локальных изображений внутри репозитория, а абсолютные – только для постоянных внешних файлов. Имена картинок стоит задавать в нижнем регистре без пробелов, чтобы не возникало ошибок на серверах с чувствительностью к регистру.
Настройка позиции изображения с помощью background-position

Свойство background-position задаёт точку привязки фонового изображения внутри блока. Позиция может указываться в пикселях, процентах или ключевых словах. Например, запись background-position: center center; размещает картинку по центру, а background-position: right top; – в правом верхнем углу.
Для точного смещения применяются значения в пикселях: background-position: 20px 40px;. Первый параметр отвечает за горизонталь, второй – за вертикаль. Проценты позволяют адаптировать расположение под ширину и высоту контейнера: background-position: 50% 0%; фиксирует изображение по горизонтальному центру, оставляя его в верхней части блока.
При работе с крупными изображениями удобен приём совмещения background-position с background-size. Например, background-size: cover; формирует масштаб для заполнения области, а позиционирование фиксирует важную часть изображения, чтобы она не обрезалась в непредсказуемой зоне.
Чтобы избежать смещений, стоит проверять результат в разных разрешениях экрана. При необходимости корректировку можно выполнять через медиазапросы, меняя позиционирование для отдельных диапазонов ширины.
Масштабирование изображения через background-size
Свойство background-size контролирует масштаб фонового изображения. Значения указываются в пикселях, процентах или ключевых словах. Например, запись background-size: 100% 100%; растягивает картинку по ширине и высоте контейнера, а background-size: 50% auto; изменяет только горизонталь, сохраняя пропорции по вертикали.
Ключевые значения cover и contain применяются для адаптивной вёрстки. cover заполняет всю область, обрезая лишнее по краям, а contain вписывает изображение внутрь блока целиком. Первый вариант подходит для полноэкранных фонов, второй – для ситуаций, где важна целостность изображения.
При работе с процентами масштаб зависит от размеров контейнера: background-size: 100% auto; подстраивается под ширину, сохраняя пропорции. Для пикселей результат фиксированный и не меняется при изменении размеров блока.
Чтобы исключить размытость, стоит загружать изображение с запасом по ширине, особенно для экранов с высокой плотностью пикселей. При необходимости можно комбинировать background-size с медиазапросами и задавать разные значения под конкретные диапазоны ширины.
Закрепление фона с помощью background-attachment

Свойство background-attachment управляет поведением фонового изображения при прокрутке. Значение scroll оставляет фон привязанным к содержимому, и при скролле он смещается вместе с блоком. Вариант local синхронизирует фон с внутренней прокруткой элемента.
Значение fixed закрепляет изображение относительно окна браузера. Визуально фон остаётся неподвижным, а содержимое прокручивается поверх него. Такой приём часто используется для параллакс-эффекта. Пример записи:
background-attachment: fixed;
Фиксированный фон может работать по-разному в мобильных браузерах. Если требуется стабильное поведение на смартфонах, стоит проверить отображение на нескольких движках и при необходимости отключить fixed через медиазапросы.
Для точного результата свойство background-attachment комбинируют с background-position и background-size, чтобы расположение и масштаб оставались предсказуемыми на любых разрешениях.
Повторение и отключение повторов через background-repeat

Свойство background-repeat определяет, как фоновое изображение повторяется внутри блока. Доступны следующие значения:
- repeat – повтор по горизонтали и вертикали (значение по умолчанию);
- repeat-x – повтор только по горизонтали;
- repeat-y – повтор только по вертикали;
- no-repeat – повтор отключен, изображение отображается один раз;
- space – изображение повторяется с равными промежутками, крайние копии сохраняют позицию;
- round – изображение масштабируется так, чтобы полностью заполнить блок без обрезки.
Для небольших текстур и паттернов удобно использовать repeat или repeat-x/ repeat-y. Для крупных изображений чаще применяется no-repeat, чтобы сохранить композицию. Пример подключения:
background-repeat: no-repeat;
При создании адаптивных блоков рекомендуется комбинировать background-repeat с background-size и background-position, чтобы изображение корректно отображалось на экранах разных размеров и сохраняло визуальную целостность.
Комбинирование нескольких фоновых изображений
CSS позволяет использовать несколько фоновых изображений одновременно, перечисляя их через запятую в свойстве background-image. Первый элемент списка отображается поверх следующих, формируя слой за слоем.
Пример подключения двух изображений:
background-image: url(«img/pattern.png»), url(«img/photo.jpg»);
Для каждого изображения можно задавать отдельные параметры:
- background-position – позиция каждого слоя, например top left, center;
- background-size – масштабирование, например 50px 50px, cover;
- background-repeat – повторение, например repeat, no-repeat;
- background-attachment – закрепление, например scroll, fixed.
При использовании нескольких слоёв важно контролировать порядок и размеры изображений. Верхний слой должен содержать мелкие элементы или прозрачные детали, нижний – основной фон. Для адаптивной вёрстки сочетание слоёв подстраивается через медиазапросы, корректируя масштаб и позицию отдельных изображений.
Поддержка ретина-экранов и адаптивной верстки для фона

Для экранов с высокой плотностью пикселей стоит использовать изображения вдвое больше стандартного размера, чтобы они оставались чёткими. Например, если блок имеет ширину 200px, файл фона для ретина-дисплея должен быть 400px. Масштабирование выполняется через background-size:
background-size: 200px 100px;
Для разных разрешений и устройств можно подключать отдельные изображения через медиазапросы. Пример таблицы с рекомендациями:
| Устройство | Плотность пикселей | Размер изображения | background-size |
|---|---|---|---|
| Стандартный экран | 1x | 200px × 100px | 200px × 100px |
| Ретина | 2x | 400px × 200px | 200px × 100px |
| Высокая плотность (>3x) | 3x | 600px × 300px | 200px × 100px |
Для адаптивной вёрстки рекомендуется использовать процентные значения background-size или ключевое слово cover, чтобы фон подстраивался под ширину и высоту блока. Комбинация медиазапросов и масштабирования позволяет сохранить чёткость на всех экранах и корректное отображение композиции.
Вопрос-ответ:
Как подключить фоновое изображение к конкретному элементу на странице?
Для добавления фонового изображения используется свойство background-image в CSS. Внутри функции url() указывается путь к файлу. Например, для блока с классом header запись будет такой: .header { background-image: url(«img/bg.jpg»); } Путь может быть относительным — относительно CSS-файла, или абсолютным — с полным адресом на сервере.
Как изменить размер фонового изображения так, чтобы оно полностью помещалось в блок?
Свойство background-size позволяет управлять масштабом картинки. Значение contain вписывает изображение внутрь блока, сохраняя пропорции, а cover увеличивает фон, чтобы заполнить весь блок, при этом часть изображения может обрезаться. Также можно задавать конкретные размеры в пикселях или процентах для точного контроля.
Можно ли использовать несколько фоновых изображений одновременно?
Да, CSS поддерживает несколько слоёв фоновых изображений. Они перечисляются через запятую в background-image. Для каждого слоя можно отдельно задать позицию, масштаб и повторение. Например: background-image: url(«pattern.png»), url(«photo.jpg»); background-position: top left, center; background-repeat: repeat, no-repeat; Верхний слой отображается поверх нижнего.
Как сделать фон чётким на экранах с высокой плотностью пикселей?
Для ретина-экранов следует использовать изображения с удвоенным разрешением относительно фактического размера блока. Например, для блока шириной 200px загружается файл шириной 400px, а через background-size задаётся 200px. Такой подход сохраняет детализацию на экранах с высокой плотностью пикселей, а комбинация с медиазапросами позволяет корректно адаптировать фон для разных устройств.
