CSS-свойство background

Свойство background CSS позволяет управлять фоном любого элемента (тем, что отрисовывается под содержимым этого элемента). Это сокращенное свойство и оно позволяет записать несколько параметров в одной инструкции. Например:

body { 
  background: url(img.jpg) /* фоновое изображение */ 
  top center / 200px 200px /* позиция / размер */ 
  no-repeat /* повтор */ 
  fixed /* фиксация фона */ 
  padding-box /* позиционирование */ 
  red; /* цвет */ 
}

Всего у фона есть восемь свойств, и все они начинаются со слова background:

  • background-color;
  • background-image;
  • background-repeat;
  • background-attachment;
  • background-position;
  • background-size;
  • background-clip;
  • background-origin.

Их можно использовать по отдельности или комбинировать, как показано в первом абзаце. Если конкретное свойство не задано оно будет установлено в значение по умолчанию.

background-color

Свойство устанавливает цвет фона элемента, к которому оно относится. Его можно задать несколькими способами:

  • словом (названием цвета по-английски),
  • шестнадцатеричным числом, предваряя его решеткой;
  • с помощью RGB-кода.

На примере задали фон у квадрата с помощью инструкции background-color: blue.

See the Pen
background-color
by Андрей (@adlibi)
on CodePen.

По умолчанию фон в HTML у страницы или любого элемента является полностью прозрачным, то есть ему присвоено значение transparent (отсутствие какого-либо цвета).

background-image

С помощью этого свойства в качестве фона для сайта можно поставить изображение. Указывая значения других свойств, можно изменять его размер, определять место на странице и повторять как в горизонтальном, так и в вертикальном направлении. Указателем на рисунок в таблице является путь к файлу-изображению, который записывается с помощью конструкции url. Следует помнить, что тег img, в отличие от свойства image, является частью языка html.

See the Pen
background-image
by Андрей (@adlibi)
on CodePen.

Если для элемента установлено значение цвета фона, то он будет виден до окончания загрузки картинки, а также сквозь ее прозрачные участки.

background-repeat

Является дополнением к предыдущему свойству и уточняет, как повторяется внутри блока изображение, использованное в качестве фона. По умолчание установлено repeat – повтор и по горизонтали и по вертикали.

На примере использовано значение свойства repeat-x, при котором фоновая картинка повторяется только по горизонтали.

See the Pen
background-repeat
by Андрей (@adlibi)
on CodePen.

background-attachment

Свойство устанавливает, будет ли фоновый рисунок привязан к содержимому элемента, то есть будет ли оно прокручиваться вместе с ним (при наличии полосы прокрутки). Присвоение свойству значения scroll приведет к прокручиванию, в случае установки его в состояние fixed оно будет неподвижно. Значение по умолчанию – scroll.

На примере использовано свойство background-attachment: fixed. При скроллинге содержимого элемента фон остается неподвижным.

See the Pen
background-attachment
by Андрей (@adlibi)
on CodePen.

background-position

Дает возможность установить точное местоположение фонового изображения и использует два значения, указывающих координаты по горизонтали и вертикали и записываемых через пробел. Свойство background-position позволяет применять различные способы – названия сторон элемента (left, right, top, bottom, center), проценты, миллиметры, пиксели.

Значение по умолчанию – 0, то есть левый верхний угол изображения помещается в левый верхний угол элемента.

На примере изображение сдвинуто вправо на 20px и вниз на 40px;

See the Pen
background-position
by Андрей (@adlibi)
on CodePen.

background-size

С помощью свойства можно осуществить изменение величины фоновой картинки, то есть использовать ее масштабирование. Размер можно изменять используя любые единицы, которые допустимы в таблицах CSS – проценты, пиксели, em (величина применяемого в блоке шрифта).

При этом значение cover пропорционально увеличивает рисунок до ближайших размеров – ширины или высоты, contain – позволяет полностью заполнить блок, также сохраняя соотношение ширины и высоты.

Значение по умолчанию – auto.

На примере мы взяли квадрат размером 200×200 и фоновую картинку меньшим размером – 100×100, которой заполнили заполнили всю область фона с помощью background-size: cover.

See the Pen
background-size
by Андрей (@adlibi)
on CodePen.

background-clip

Дает возможность определить взаимодействие границ фона и отступов элемента. Предусмотрены три варианта – под границами (border-box – по умолчанию), с учетом отступов (padding-box), внутри контента (content-box).

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

See the Pen
background-clip
by Андрей (@adlibi)
on CodePen.

background-origin

Действует аналогично предыдущему свойству, но применяется в отношении фонового рисунка. То есть определяет точку начала отсчета координат левого верхнего угла вставленного изображения – это наружный или внутренний угол границы или левый верхний угол содержимого. Имеет такие же значения – border-box, padding-box, content-box. Значение по умолчанию – padding-box.

Множественные фоны

Таблицы CSS позволяют сделать фон, состоящим из нескольких слоев изображений, количество которых определяется числом значений, вводимых последовательно через запятую после background-image. При этом картинки ложатся друг под друга сверху вниз, начиная с первого. Каждую из них можно определить с помощью указания значений других свойств, имеющих отношение к изображению. Присваивая слою состояние прозрачности, его можно скрывать.

Таким образом, установка значений свойств фона в CSS дает возможность окрасить его в любой цвет, приняв в учет различные элементы блока (свойства color и clip). Вместо этого или дополнительно внутри элемента можно поместить фоновое изображение, выбрав для него определенное место, увеличив или уменьшив при этом, а также при необходимости повторив его в горизонтальном или/и вертикальном направлении (свойства image, size, position, attachment, repeat, origin).

Следует иметь в виду, что рассмотренные свойства не наследуют своих родителей, но цвет фона наследника ввиду его значения по умолчанию, равного transparent, будет таким же, как и родительский. Для наследования свойства необходимо устанавливать его в значение inherit.

Оцените статью
Инструкции для Web
Добавить комментарии