Фон, задание фона при помощи средств CSS
Здравствуйте дорогие читатели моего блога. Сегодня мы поговорим о том как можно задавать фон для различных элементов нашего сайта или блога. Давайте для начала разберемся как можно задать фон для сайта и это можно сделать при помощи двух способов-задать непосредственно цвет для фона определенного элемента или же задать картинку в качестве фонового цвета и тем самым у вас намного больше возможностей в редактировании сайта. Сейчас сначала мы разберем как можно задать цвет фона в CSS а потом перейдем к картинкам.
Как задать цвет фона в CSS.
Ну вот мы и подошли к основному вопросу задания цвета в CSS и применение его на практике. Так как цвет фона в CSS можно задавать многим элементам то нам первым делом нужно создать такие элементы и в этом нам поможет моя предыдущая статья в которой было рассказано про блочный дизайн и как с помощью тегов задать блоки.
Теперь давайте создадим для примера блок, абзац и зададим фон для разного рода тегам. Я создал два блока которым задал стиль и айди а также создали абзац и после этого наполнили все элементы чтобы их было видно.
Теперь давайте зададим для каждого из этих элементов свой цвет и посмотрим как это можно сделать. Для того чтобы задать цвет фона в CSS вам понадобится команда background-color и также мы должны прописать для них параметр цвета. Вот как это должно выглядеть:

Первое что мы сделали это выбрали элемент для которого нужно задать, это были блоки div, абзац p и тег тела страницы body. После этого мы указываем команду background-color и через двоеточие указываем нужный нам цвет. И вот что у нас получилось в итоге.

Как видите в задании цвета для фона любого элемента не сложно, поэтому я уверен что у вас все получится и вы сможете задать фон самостоятельно и любого цвета.
Картинка как фоновый элемент.
Картинка как фоновый элемент может быть задано при помощи команды background-image и указания пути к картинке. Для того чтобы задать в качестве фона картинки под именем bg.jpg то нам нужно написать следующую конструкцию:
Вот как мы задали картинку bg9.png как фоновая картинка для тега body и вот какой код мы для этого должны добавить в файл стилей:
И получим мы вот такой результат:

Как видим фон поменялся и теперь нам нужно разобраться более подробно как задавать картинки в качестве фона элемента. Первое что нам нужно уяснить это то, что если мы задаем картинку меньшего размера чем ширина и высота то элемент начинает дублироваться пока не заполнит все пространство. На нашей картинке этого не видно но мы сейчас зададим другую картинку и все увидим.

Теперь мы видим что одна маленькая картинка размножилась для того чтобы можно было заполнить все пространство. Благодаря такому свойству мы можем уменьшить скорость загрузки картинок в дизайне.
Но иногда нам нужно чтобы картинка не размножалась или размножалась по определенной оси. Для этого нам нужно свойство background-repeat с помощью него мы сможем задавать повтор фонового изображения. И сначала мы запретим размножаться картинке с помощью следующей фразы:
Теперь давайте посмотрим как это выглядит на практике. Давайте зададим нужный атрибут для нашего фонового рисунка и посмотрим на результат.

И вот какой мы сейчас получим результат на нашем документе.

Как видим наша картинка стала фоном только на площадь картинки и дальше не копировалась. Теперь давайте разберемся где это можно применять. Такую команду можно применить для того чтобы например сделать у конкретного элемента на сайте только четко заданный фон и благодаря чему можно избежать не стыковки по цвету что очень часто происходит при плохом подборе картинки.
Но мы также можем нашу картинку тиражировать не только по двум осям а также и по одной из них, по оси Х или Y и мы посмотрим сейчас как это можно сделать. Для того чтобы мы могли раз тиражировать нашу картинку по определенной оси в этом нам поможет команда background-repeat а к ней мы добавим два важных атрибута repeat-x (для тиражирования по горизонтали) repeat-y (для тиражирования по вертикали) а теперь давайте посмотрим на применение данных команд на практике.
Задав команду background-repeat:repeat-x; наша картинка начнет тиражироваться только по горизонтали. Вот как это выглядит на практике:

При задании команды background-repeat:repeat-y; мы получим вот такую картину:

Таким образом мы можем сократить загрузку фоновых изображений на нашем сайте и в следующих статьях мы более подробно рассмотрим применение такого метода в дизайне.
Позиционирование фонового изображения.
Также мы можем задавать место в котором рисунок должен выводится и в этом нам поможет команда background-position к которой мы можем задать несколько атрибутов это:
right
center
left
Надеюсь что вы поняли задавая такие команды мы можем разместить фон справа, в центре и в левой части нашего элемента. Также мы можем не только указать абсолютную позицию а также можем точно указать координаты для нашей картинки.
Для этого нам нужно просто указать в пикселах отступ от края сбоку и сверху соответственно.
background-position: 400px 200px;
Фиксация фонового изображения.
Фиксация фона задается при помощи команды background-attachment и который имеет всего два значения fixed и inherit нам нужен только команда fixed с помощью которой мы можем зафиксировать картинку в качестве фона и при прокрутке элемента всегда будет находится на заданном ранее положении.
Задайте такую команду для своего сайта и вы увидите как можно задать фон для элемента в независимости от того какой размер блока.
Краткая запись фоновых команд.
Как вы уже поняли для того чтобы задать все аспекты фона на сайте нам понадобится очень длинный код но его можно сократить до одной-двух строчек при помощи сокращенной записи свойств и вот как это делается:
background:цвет_фона нужно_ли_тиражировать_фон фиксация_фона расположение_фона;
Вот как мы могли бы записать все наши команды в одну строчку:
Самое главное это запомните что указывать их нужно именно в этой последовательности и команды между собой разделять пробелом.
На этом статья закончена и мы разобрались с фоном сайта и как правильно задавать фон для любого сайта.
Как закрепить фоновое изображение css
Хотел бы ещё затронуть такую тему, как фоновое изображение страницы, и динамическое изменение его параметров, в зависимости от разрешения экрана пользователя.
А именно:
- изображение должно полностью заполнять фон страницы, независимо от разрешения экрана;
- должно, по возможности, сохранять пропорции (соотношение сторон);
- изображение НЕ должно вызывать скроллинга (полос прокрутки);
Изменение фонового изображения страницы с помощью CSS3-свойства «background-size»
С приходом CSS3 появилось такое свойство, как «background-size», непосредственно отвечающее за масштабирование фона. Многие современные браузеры стремятся соответствовать стандарту W3C и уже поддерживают это свойство.
К ним относится: Opera 9.5 и выше, Firefox 4 и выше,Safari 3 и выше, Chrome 4 и выше, Konqueror 3.5.4 , и, как ни странно, лидер неподдержки стандартов — Internet Explorer 9.
Все они уже поддерживают CSS3 свойство «background-size», но, как и обычно, коряво, и для разных браузеров, по своему: через -moz-background-size для Мозиллы; -o-background-size для Opera; -webkit-background-size для Safari, Chrome, и -khtml-background-size для Konqueror (WebKit-браузеров), соответственно. ヅ .
Как и было упомянуто выше, с приходом CSS3, а именно свойства «background-size», сделать это достаточно просто.
Допустимые значения cвойства background-size:
- «величина» — ширина и высота фонового изображения в прямом виде;
- «процент» — ширина и высота фонового изображения в процентном отношении от ширины и высоты элемента;
- contain — изображение масштабируется, сохраняя при этом пропорции, по большей стороне так, чтобы и ширина и высота поместились внутри области фонового изображения;
- cover — изображение масштабируется, сохраняя при этом пропорции, по меньшей стороне так, чтобы и ширина и высота полностью покрыли область фонового изображения;
- auto — изображение имеет свой собственный размер (масштаб 100%), а если нет то масштабируется, как будто задано значение contain.
HTML-код:
- — не нужен, так как работаем только с тегом
- — если что — смотрим исходный код примера .
CSS-стили:
html,body — задаём html и body фоновый цвет — прозрачный — дабы картинка просвечивала.
html — задаём фоновую картинку Html, фиксируем её по центру, запрещаем повторятся.
html — назначаем CSS3-свойству background-size значение «cover» — масштабировать изображение с сохранением пропорций по max размерам (ширине или высоте — что больше) блока — в данном Html.
Изменение фона страницы посредством позиционированного изображения
Ещё один довольно простой способ зафиксировать и растягивать фон в зависимости от разрешения монитора пользователя, заключается в следующем: — под контент подкладывается изображение, фиксируется в верхнем левом углу и задаётся ему минимальная ширина и высота равная 100% — тем самым, сохраняя пропорциональность при ресайзе.
Также, добавляется min-width ширины изображения таким образом, чтобы изображение никогда не будет меньше, своего фактического размера.
Дабы она не находилась на переднем плане, саму картинку и блок-обёртку смещают по z-оси на задний план (z-index:-1).
Также, используется @media screen and (max-width:1024px), которое корректирует положение картинки, если окно обозревателя меньше изображения, используя комбинацию процентной величины левого положения и отрицательного левом поля.
HTML-код:
— Добавляется после контента, перед закрывающим
Как зафиксировать фоновое изображение css. Фиксированные, прокручивающиеся фоновые изображения. Основы работы с фоном в html
Практически каждый популярный сайт имеет приятный внешний вид. В дизайне сайта важной частью является фон, который также называют background, который каждый из нас может создать или изменить. В этом материале я расскажу как поставить фон на сайт.
Делаем новый фон для сайтов
Для выполнения поставленной задачи, Вы можете воспользоваться одним из 4-ех способов:
- 1. Фон с одного цвета
- 2. Фон с текстуры
- 3. Фон с помощью градиента
- 4. Фон с большого изображения
Создаем фон с помощью одного цвета
Чтобы создать или изменить задний фон сайта, который состоит из одного цвета, необходимо перейти в файл style.css , в котором отыскать значение — body (оно отвечает за основное тело сайта). Теперь Вам необходимо прописать функцию background-color если ее не было и указать код цвета. В том случае, когда Вам необходимо создать задний фон для сайта белого цвета, то придется прописать следующий код:
background-color: #83C5E9 ; (синий фон, как на примере)
Вы сможете найти полный перечень цветов на сайте — (STM). Для изменения цвета, просто изменяйте значение после двоеточия и наслаждайтесь своими трудами.
Создание фона при помощи текстуры
Данный метод особенно популярен в последнее время, так как позволяет сделать красивый background для сайта. Текстуры могут быть простыми, но очень красивыми, именно поэтому их часто используют. Для того чтобы подключить любую текстуру, ее необходимо загрузить в папку image на хостинг, где установлен Ваш сайт. После этого следует прописать следующий код:
background-color: #537759;
background-image: url(images/pattern.png);
В этом коде есть знакомый нам параметр для поддержания цвета (он зеленый) и элемент, который отвечает за подключение текстуру зеленого цвета.
Делаем фон с помощью градиента
Любое изображение, которое подключается за счет css функций, можно повторять, как по горизонтали, так и по вертикали (по осям X и Y ). Такая возможность позволяет нам создать любой простой фон для сайта своими руками. Для этого необходимо создать градиент шириной в 1 мегапиксель (см. картинку ниже), сохранить его как изображение и загрузить на хостинг. После этого можно прописывать необходимый код, а именно:
background-color: #83C5E9;
background-image: url(images/gradient.jpg);
background-repeat: repeat-x;
В этом наборе, в порядке очереди идет функция, отвечающая за цвет фона, который мы используем для перестраховки. После этого параметр, который отвечает за подключение градиента и наконец, функция, которая отвечает за повторение градиента по оси X.
Используем большую картинку для фона сайта
Этот метод второй по популярности, так как позволяет использовать различные картинки для создания фона. Для реализации этого метода Вам необходимо лишь загрузить большое изображение в папку с картинками сайта и прописать следующий код:
background-color: #000000;
background-image: url(images/название картинки.jpg);
background-position: center top;
background-repeat: no-repeat;
Если с первыми двумя параметрами все понятно, то последние два необходимо осветить. Третья функция позволяет закрепить изображение по центру сайта, а последний параметр блокирует его повторение по всей структуре страницы.
Изменяем фон на сайтах ucoz
Те способы создания фона для сайта могут быть использованы на разных системах управления сайтами, но не на сайтах — ucoz. Для того чтобы изменить фон для сайта ucoz, необходимо перейти в панель управления сайтом, зайти в «Управлением дизайном» , а потом в «Редактирование шаблонов» .
Теперь необходимо открыть Таблицу стилей (CSS), найти строчку «body» и параметр «background» . После этого нужно скопировать ссылку, вставить ее в интернет — браузер и вы получите доступ к картинке, которая была фоном.
Для использования нового фона, необходимо просто загрузить его в Файловый менеджер. При этом проследите, чтобы название новой картинки для фона было тем же, что и до изменения. Сохраните свои работы и перейдите на сайт, для просмотра проведенной работы.
Изменяем фон для сайта на HTML
Если вы хотите фон на html сайте сделать за счет изображения, то просто в коде впишите строчку:
А если хотите сделать фон сайта при помощи цвета, то строчка должна выглядеть вот так:
На этом наш рассказ завершается. Теперь вы знаете как сделать фон для сайта. Удачных проектов!
Трепачёв Д.П. 2012-2020 г.
Ученикам: у меня до 6 января каникулы, на каникулах буду отвечать по возможности,
иногда могу на пару дней пропадать
Верстка JavaScript PHP NodeJs Vue React Laravel WordPress AJAX Парсинг Основной учебник Справочник HTML Справочник CSS Учебник ООП и MVC Видеоуроки Основной учебник Справочник Видеоуроки Основной учебник Основной учебник Основной учебник Учебник администратора Учебник разработчика Учебник AJAX+PHP
Свойство background-attachment
Свойство background-attachment задает каким образом прокручивать фоновую картинку элемента: вместе с текстом или текст будет скользить по картинке.
Синтаксис
Значения
Значение по умолчанию: scroll .
Пример . Значение scroll
Сейчас свойство background-attachment установлено в значение scroll . Прокрутите элемент по вертикали — вы увидите, как текст прокручивается вместе с фоном:
Как закрепить на фоне не фоновое изображение?
Хочу оставить изображение не являющееся фоном, позади текста. Так чтобы оно выглядело как элемент фона. Пробовал задать position: fixed, но тогда оно съезжает влево. А мне нужно чтобы оно оставалось по середине.
Я так понимаю, вы хотите получить что-то такое:
FlexBox слушается лучше для выравниваний, а чтобы было не слева, нужно задавать ширину.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками css или задайте свой вопрос.
дизайн сайта / логотип © 2022 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2022.1.7.41110
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.
Похожие публикации:
- Что нужно указывать при создании таблицы sql
- Что такое echo в php
- Что такое sql dml
- Что такое индексы в sql
background — repeat
При помощи этого свойства и небольшой картинки можно создавать красивые паттерны на фоне.
Время чтения: меньше 5 мин
Открыть/закрыть навигацию по статье
Контрибьюторы:
Обновлено 17 мая 2022
Кратко
Скопировать ссылку «Кратко» Скопировано
Свойство background — repeat управляет повтором фонового изображения. По умолчанию значение этого свойства — repeat , то есть фоновая картинка будет повторяться по вертикали и по горизонтали.
Пример
Скопировать ссылку «Пример» Скопировано
div class="element">div>
.element height: 100vh; background-image: url(images/pattern.png); background-size: 64px auto;>.element height: 100vh; background-image: url(images/pattern.png); background-size: 64px auto; >
Получился красивый паттерн. Изображение повторяется по горизонтали и по вертикали.
Изменим значение на repeat — x :
.element background-repeat: repeat-x;>.element background-repeat: repeat-x; >
Теперь картинка повторяется только по горизонтали. Аналогично можно повторить картинку по вертикали при помощи значения repeat — y .
Но чаще всего в работе встречается значение no — repeat . С таким значением фоновая картинка не будет повторяться ни по горизонтали, ни по вертикали.
Как пишется
Скопировать ссылку «Как пишется» Скопировано
В качестве значения для свойства background — repeat используются следующие ключевые слова:
- no — repeat — фоновое изображение не повторяется, остаётся только одно внутри элемента.
- repeat — изображение повторяется и по горизонтали, и по вертикали до тех пор, пока не заполнит всю площадь элемента (значение по умолчанию).
- repeat — x — фон повторяется по горизонтали.
- repeat — y — фон повторяется по вертикали.
- space — изображение повторяется до тех пор, пока не заполнит весь элемент. При этом, если по размерам не удаётся повторить изображение без обрезки, то между картинками добавляется равное пространство. Крайне редко требуется в работе.
- round — изображение повторяется так, чтобы заполнить весь элемент. Но картинка не обрезается, повторяется целое количество раз. Если это не удаётся, то картинка масштабируется. Крайне редко требуется в работе.
Ключевые слова repeat и no — repeat можно комбинировать, чтобы управлять повторениями по горизонтали (первое значение) и по вертикали (второе значение). Но проще указывать специальные ключевые слова repeat — x и repeat — y .
Подсказки
Скопировать ссылку «Подсказки» Скопировано
Свойство не наследуется.
Значение по умолчанию — repeat .
Чаще всего для полноэкранных фонов указывается значение no — repeat .
Свойство background — repeat нельзя анимировать
На практике
Скопировать ссылку «На практике» Скопировано
Алёна Батицкая советует
Скопировать ссылку «Алёна Батицкая советует» Скопировано
background — repeat — свойство простое. Написано повторять — повторяем фон. Написано не повторять — не повторяем.
С помощью повторения фона и линейного градиента ( linear — gradient ) можно создавать полосатые фоны.
div class="element">div>
.element height: 100vh; background-image: linear-gradient( #49a16c 50px, #064236 0 ); background-size: 100% 100px; background-repeat: repeat-y;>.element height: 100vh; background-image: linear-gradient( #49a16c 50px, #064236 0 ); background-size: 100% 100px; background-repeat: repeat-y; >
Как поставить задний фон в html css
В прошлой статье мы говорили о том, как изменить цвет фона на сайте с помощью атрибутов тега body и CSS-стилей: Фон в HTML. В текущей статье речь пойдет об использовании изображений в качестве фона на сайте, о том как растянуть фон на всю ширину страницы и зафиксировать его.
Картинка в качестве фона страницы — HTML
Рассмотрим сначала способ задания фонового изображения на сайте с помощью атрибута background тега body:
Как в примере выше, рекомендуется помимо картинки указывать и цвет фона (он будет отображаться на сайте во время загрузки страницы), который будет максимально сочетаться с фоновым изображением и создавать контраст с текстом на сайте. Например, если вы используете белый цвет текста на сайте, то стоит указать темный цвет фона и задать темное фоновое изображение. В таком случает текст будет легко читаться.
Примечание: Фоновое изображение и цвет фона рекомендуется задавать не с помощью HTML, а с помощью CSS. В таком случае код будет валидным и более правильным.
Картинка в качестве фона страницы — CSS
В CSS фоновый цвет и фоновое изображение можно задать одним свойством background:
Здесь с помощью свойства background-attachment фиксируется фон страницы, а с помощью свойства background-repeat устанавливается повторение изображения по горизонтали. Но стоит учесть, что фоновое изображение должно хорошо «сшиваться» по краям.
Если вы хотите растянуть фоновое изображение на весь размер окна браузера, используйте свойство background-size: 100%;
В конструкторе сайтов «Нубекс» для любого сайта можно использовать большое изображение в качестве фона и закрепить его.
Как сделать картинку фоном в HTML и CSS. 3 простых способа
Приветствую. В этой статье я хочу рассказать о трех способах размещения изображения в качестве фона всей страницы при помощи только HTML + CSS (без использования JS).
Итак, требования к фоновому изображению у нас следующие:
- Покрывается 100% ширины и высоты страницы
- Фон масштабируется при необходимости (background растягивается или сжимается в зависимости от размеров экрана)
- Сохраняются пропорции картинки (aspect ratio)
- Изображение центрировано на странице
- Фон не вызывает скроллов
- Решение максимально кроссбраузерное
- Не используются никакие другие технологии кроме CSS

Способ 1
На мой взгляд, это лучший способ, ведь он самый простой, лаконичный и современный. Он использует свойство CSS3 background-size , которое мы применяем к тегу html . Именно html , а не body , т.к. его высота больше или равна высоте окна браузера.
Устанавливаем фиксированный и центрированный фон, затем корректируем его размер, используя background-size: cover .
Этот способ работает в
Chrome (любая версия) Opera 10+ Firefox 3.6+ Safari 3+ IE 9+
Способ 2
В случае если ширина окна будет меньше ширины изображения, будет использоваться media query для выравнивания бэкграунда по центру.
Этот способ работает в:
- Любой версии хороших браузеров (Chrome, Opera, Firefox, Safari)
- IE 9+
Способ 3
Еще один способ заключается в следующем: фиксируем изображение к левому верхнему углу страницы и растягиваем его при помощи свойств min-width и min-height 100%, сохраняя при этом соотношение сторон.
Правда при таком подходе картинка не центрируется. Но эта проблема решается заворачиванием картинки в , который мы делаем в 2 раза больше размера окна. А само изображение мы растягиваем и помещаем по центру.
Этот способ работает в хороших браузерах и IE 8+.
Надеюсь, эта информация будет для Вас полезной. Лично я частенько пользуюсь этими методами, особенно первым. Наверняка есть и другие способы поместить изображение на задний фон при помощи CSS. Если Вы о них знаете, поделитесь, пожалуйста, комментариях.
Как сделать фон в html и CSS?

В этой статье я покажу несколько вариантов как сделать фон в html и CSS. Думаю, вы согласитесь, что фон играет одну из самых важных ролей в дизайне любого сайта? От него зависит читабельность текста и его общее оформление.
Навигация по статье:
Как в html сделать фон в виде цвета или картинки?
Вы можете задавать фон блока или всей страницы с использованием различных вариантов:
- при помощи цвета,
- использовать изображение,
- градиентный фон,
- использовать сразу несколько вариантов (например, картинка + цвет или несколько картинок сразу).
Введу того что HTML не особо предназначен для визуального оформления страницы, в с помощью HTML можно сделать только фон в виде цвета или изображения. Для использования остальных вариантов создания фона нам не обойтись без помощи CSS. Но обо всём по порядку.
Чтобы в html сделать фон нам понадобится атрибуты bgcolor и background.
Для того чтобы в HTML сделать фон в виде цвета нужно к тегу для которого нам нужно задать фон дописать атрибут bgcolor
Чтобы сделать фон в виде изображения используем background и в кавычках указываем путь к файлу с картинкой.
Как сделать фон в CSS?
Как я уже писала выше мы можем использовать разные варианты задания фона и для всех их нам понадобится свойство background с разными значениями. Для того чтобы его использовать нам нужно сделать следующее:
-
1. В HTML коде присвоить элементу, для которого мы хотим задать цвет определённый класс или использовать атрибут style. Мне больше нравится вариант с классом, поэтому в первую очередь покажу его.
Как сделать фон в виде цвета в CSS?
Для задания цвета фона мы можем использовать несколько форматов:
-
1. Кодовое название цвета
Уровень прозрачности задаётся в виде десятичного значения от 0 до 1, где 0 – полностью прозрачный, а 1 – не прозрачный.

Так же вы можете воспользоваться вот этим инструментом для подбора нужного цвета и определения его кода. Просто водите мышкой по палитре, подбираете цвет и справа отображается его значение в шестнадцатеричном формате (HEX) и в формате rgb.
Как сделать фон в виде картинки в CSS?
Для этого нам нужно будет:
- 1. К себе на сайт в определённую папку с картинками загрузить изображение, которое мы хотим использовать в качестве фона.
- 2. Задать его в CSS

Вы можете отключить повторение фона для маленьких изображений, дописав no-repeat: Так же можно сделать чтобы он повторялся только по горизонтали: Или только по вертикали: Кроме того мы можем управлять расположением фонового изображения для элемента. Для этого нам нужно дописать следующе:
- top – для выравнивание по верхнему краю
- bottom — для выравнивания по нижнему краю
- left – выравниваем по левому краю
- right – по правому
- center – выравниваем по центру (можно использовать как для выравнивания по горизонтали так по вертикали)
Так же можно сочетать эти выравнивания.
Как растянуть фоновое изображение под размер элемента?
По умолчанию фоновое изображение не подстраивается под размер элемента. В эпоху адаптивных дизайнов это доставляет много неудобств. Для решения этой проблемы можно использовать свойство background-size.
- background-size: 100% auto; — растянет изображение по горизонтали, а по вертикали размер будет увеличиваться пропорционально чтобы не искажалось изображение.
- background-size: auto 100%; — растягивает по высоте, а по ширине размер пропорционально масштабируется.
- background-size: 100% 100%; — растянет картинку по горизонтали и вертикали, при этом изображение может деформироваться.
- background-size: contain; — изображение будет масштабироваться под размер блока насколько это возможно без искажения.
- background-size: cover; — картинка масштабируется чтобы хотя бы одна из сторон была по размеру элемента и не искажалась.
Как изменить расположение фона внутри элемента?
Кроме описанных выше значений top, bottom, left, right и center мы так же можем использовать значения в пикселях, процентах и em чтобы выставить фоновую картинку так как нам нужно.
Как сделать фон в HTML
От автора: всех приветствую. Фоновые цвета и изображения в веб-дизайне имеют огромную роль, так как позволяют более привлекательно оформить любые элементы. Как сделать фон в html, мы рассмотрим сегодня.

Можно ли обойтись средствами html при задании фона?
Сразу скажу, что нет. Вообще html не создан для того, чтобы оформлять веб-страницы. Это просто очень неудобно. Например, там есть атрибут bgcolor, с помощью которого можно задавать фоновый цвет, но это очень неудобно.
Соответственно, мы будем использовать каскадные таблицы стилей (css). Там гораздо больше возможностей для задания бэкграунда. Мы сегодня разберем самые основные.
Как задать фон через css?
Итак, прежде всего вам нужно определиться с тем, какому элементу нужно задать фон. То есть нам нужно найти селектор, к которому мы будем писать правило. Например, если фон нужно задать всей странице в целом, то можно сделать это через селектор body, всем блокам – через селектор div. Ну и т.д. Фон можно и нужно привязывать к любым другим селекторам: стилевым классам, идентификаторам и т.д.

Практический курс по верстке адаптивного сайта с нуля!
Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3
После того, как вы определились с селектором, нужно написать само название свойства. Для задания фонового цвета (именно сплошного цвета, не градиента и не картинки) используется свойство background-color. После него нужно поставить двоеточие и написать сам цвет. Это можно сделать по-разному. Например, с помощью ключевых слов, hex-кода, форматов rgb, rgba, hsl. Любой способ подойдет.
Чаще всего используется способ шестнадцатеричного кода. Для подбора цветов можно использовать программу, в которой видно код цвета. Например, photoshop, paint или какой-либо онлайн-инструмент. Соответственно, для примера пропишу общий фон для всей веб-страницы.
Я советую вам сейчас создать на рабочем столе html и css файлы, подключить css к html и повторять за мной. Так вы поймете все намного лучше, чем если просто читать. Для работы с файлами советую использовать программу Notepad++. Назовите первый файл, например index.html, а второй — style.css. Подключить css к html можно так:
Этот код нужно вставить в секцию head. Важно, чтобы файлы находились в одной папке.
Хорошо, а мы идем дальше. Чтобы показать вам другие возможности задания фона, мне придется создать небольшой блок, в котором мы и будем экспериментировать с фоновым изображением. Да-да, именно с изображением.
Картинка в качестве фона
В качестве картинки я буду использовать маленький значок языка html:

Создадим пустой блок с идентификатором:
Зададим ему явные размеры и фон:
Из этого кода вы можете видеть, что я использовал новое свойство – background-image. Оно предназначено как раз для вставки картинки в качестве фона html-элементу. Посмотрим, что получилось:

Чтобы задать картинку, вы должны после двоеточия написать ключевое слово url, а потом в круглых скобках указать путь к файлу. В данном случае путь указан исходя из того, что изображение лежит в той же папке, что и html-документ. Также нужно указать формат изображения.
Если вы сделали этого, а в блоке все равно не отображается фон, проверьте еще раз, правильно ли вы написали название картинки, правильно ли задан путь и расширение. Это самые частые причины того, что просто не выводится фон, так как браузер не может найти изображение.
Но заметили ли вы одну особенность? Браузер взял и размножил картинку по всему блоку. Так вот, чтобы вы знали, это поведение фоновых картинок по умолчанию – они повторяются по вертикали и горизонтали до тех пора, пока могут влезь в блок. По этим поведением вы можете легко управлять. Для этого используют свойство background-repeat, у которого есть 4 основных значения:
Repeat – значение по умолчанию, изображение повторяется по обеим сторонам;
Repeat-x – повторяется только по оис x;
Repeat-y – повторяется только по оси y;
No-repeat – не повторяется вообще;
Каждое значение вы можете прописать и посмотреть, что же случится. Я пропишу так:

Теперь повторение только по горизонтали. Если прописать no-repeat, то была бы только одна картинка.
Отлично, на этом уже можно заканчивать, так как это базовые возможности работы с фоном, но я вам покажу еще 2 свойства, которые позволяют получить вам больше возможностей в управлении.
С помощью повторения верстальщики раньше достигали того, что создавали фоновые текстуры и градиенты, используя одно малюсенькое изображение. Оно могло быть 30 на 10 пикселей или еще меньше. А может и немного больше. Изображение было таким, что при его повторении по одной или даже по обеим сторонам, не было видно переходов, так что в итоге получался единый цельный фон. К слову, такой подход стоит использовать и сейчас, если вы хотите использовать бесшовную текстуру на своем сайте в качестве фона. Градиент же сегодня уже можно реализовать методами css3, об этом мы еще обязательно поговорим.
Позиция фона
По умолчанию фоновое изображение, если для него не задано повторение, будет находиться в левом верхнем углу своего блока. Но положение можно легко изменить с помощью свойства background-position.
Задавать его можно по-разному. Один из вариантов, это просто указать стороны в которых должна находиться картинка:

То есть по вертикали все так и осталось: фоновая картинка располагается сверху, но по горизонтали мы изменили сторону на right, то есть правую. Еще один способ задать позицию – в процентах. Отсчет при этом начинается в любом случае с верхнего левого угла. 100% — весь блок. Таким образом, чтобы поместить картинку ровно по центру, запишем так:

Практический курс по верстке адаптивного сайта с нуля!
Изучите курс и узнайте, как верстать современные сайты на HTML5 и CSS3

Запомните одну важную вещь, связанную с позиционированием – первым параметром всегда указывается позиция по горизонтали, а вторым – по вертикали. Итак, если вы видите значение 80% 20%, то можно сразу заключить, что фоновое изображение будет сильно сдвинуто вправо, но вниз при этом сильно не уйдет.
Ну и наконец, прописывать позицию можно в пикселях. Все то же самое, только вместо % будет px. В некоторых случаях может понадобиться и такое позиционирование.
Сокращенная запись
Согласитесь, что код получается достаточно громоздким, если все задавать так, как это делали мы. Получается, и путь к картинке нужно задать, и повторение, и позицию. Конечно, повторение и позиция не всегда необходимо, но в любом случае, более правильно будет использовать сокращенную запись свойства. Она выглядит так:
То есть первым делом нужно записывать общий сплошной фоновый цвет, если это необходимо. Потом путь к изображению, повторение и позиция. Если какой-то параметр не нужен, то просто опускаем его. Согласитесь, так гораздо быстрее и удобнее, а еще мы существенно уменьшаем наш код. Вообще, я советую записывать сокращенно всегда, даже если нужно указать только цвет или картинку.
Далее мы рассмотрим другое свойство – размер фона. Его уже не задашь сокращенно в качестве параметров в сокращенной записи.
Управляем размером фоновой картинки
Наше текущее изображение не очень хорошо подходит для демонстрации следующего трюка, поэтому я возьму другое. По размерам она пусть будет как блок или больше его. Так вот, представьте, что перед вами стоит задача: сделать фоновую картинку так, чтобы она заполняла свой блок не полностью. А картинка, допустим, даже больше размеров блока.
Как можно поступить в таком случае? Конечно, самым простым и разумным вариантом будет просто уменьшение картинки, но не всегда есть возможность это сделать. Допустим, она лежит на сервере и в данный момент нет времени и возможности ее уменьшить. Проблему можно решить с помощью свойства background-size, которое можно назвать относительно новым и которое позволяет манипулировать размером фонового изображения, да и вообще любого фона.
Итак, моя картинка сейчас занимает все пространство в блоке, но я задам ей размер фона:

Опять же, первым параметром задается размер по горизонтали, вторым – по вертикали. Мы видим, что все правильно применилось –фото стало размером на 80% ширины блока в ширину и наполовину в высоту. Тут только нужно внести одно уточнение – задавая размер в процентах вы можете повлиять на пропорции картинки. Так что будьте внимательны, если хотите не нарушить пропорции.
Как вы можете догадаться, также размер фона можно указывать в пикселях. Еще есть два ключевых слова-значения, которые также можно использовать:
Cover – произойдет масштабирование картинки таким образом, чтобы хотя бы по одной стороне она полностью заполняла блок.
Contain – отмасштабирует так, чтобы картинка полностью влезала в блок в максимальном своем размере.
Преимущества этих значений в том, что они не изменяют пропорции картинки, оставляя их прежними.
Также вы должны понимать, что растягивание картинки может привести к ухудшению ее качества. Могу привести пример из жизни и реальной практики верстальщиков. Все знают и понимают, что при верстке под десктопы нужно адаптировать сайт под основные ширины мониторов: 1280, 1366, 1920. Если вы возьмете фоновую картинку размером, допустим, 1280 на 200, и не зададите ей background-size, то экранах с шириной больше появится пустое место, картинка не будет заполнять ширину полностью.
В 99% случаев это не устраивает веб-разработчика, поэтому он задает background-size: cover, чтобы картинка всегда тянулась на максимум по ширине окна. Это хороший прием, который нужно использовать, но теперь вы столкнетесь с проблемой, что пользователи с шириной экрана 1920 пикселей могут увидеть картинку неоптимального качества.
Я напомню, она растянется на максимум по ширине. Соответственно, качество автоматически ухудшится. Единственно правильным решением тут будет изначально использовать картинку большего размера – 1920 пикселей в ширину. Тогда на самых широких экранах она будет в своем натуральном размере, а на других просто будет потихоньку обрезаться, но при этом, при грамотном подборе фоновой картинки, на внешний вид сайта это не повлияет.
В общем, это всего лишь 1 пример того, как использовать знания, полученные вами в этой статье, при верстке реальных макетов.
Полупрозрачный фон с помощью css
Еще одна фишка, которую можно реализовать с помощью css – полупрозрачный фон. То есть через этот фон можно будет разглядеть, что находиться за ним.
Для примера я задам всей странице в качестве фона картинку, которую мы использовали ранее в примерах. Блоку же с идентификатором bg, на котором мы проводим все наши эксперименты, зададим фон с помощью формата задания цвета rgba.
Как я уже и говорил ранее, в css есть много форматов для задания цвета. Один из них – rgb, достаточно известный формат тем, кто работает в графических редакторах. Он записывается так:rgb(17, 255, 34);
Первым значением в скобках идет насыщенность красного, потом зеленого, потом синего. Значение может быть числовым от 0 до 255. Соответственно, формат rgba ничем не отличается, только добавляется еще один параметр – альфа-канал. Значение может быть от 0 до 1, где 0 – полная прозрачность.
Соответственно, для задания средней полупрозрачности нужно записать примерно так:
Похожие публикации:
- Как изменить цвет checkbox css
- Как изменить цвет ползунка css
- Как установить pascal abc на linux
- Как установить размер блока css
Как закрепить на фоне не фоновое изображение?
Хочу оставить изображение не являющееся фоном, позади текста. Так чтобы оно выглядело как элемент фона. Пробовал задать position: fixed, но тогда оно съезжает влево. А мне нужно чтобы оно оставалось по середине.
.fon < background-image: url(https://i.imgur.com/PzZ9Hd6.jpg); background-repeat: no-repeat; background-attachment: fixed; background-size: cover; z-index: 100; font-family: "Arial"; line-height: 1.5; >.center-img < text-align: center; >.center-text
Вот здесь текст, который должен быть поверх изображения
