Общие сведения
Фоновое изображение может быть настроено таким образом чтобы полностью покрывать всю область элемента или иметь заданные автором размеры.
У некоторых изображений (<image>), таких как, например, JPEG, есть встроенные размеры и пропорции, а у других изображений, таких как градиенты (<gradient>) нет встроенных размеров и пропорций и они занимают всю фоновую область, если не указано иное. Окончательный размер фонового изображения формируется на основе того есть ли у фонового изображения внутренние размеры и пропорции.
Свойство background-size принимает либо ключевое слово (cover
или contain
), либо пару не ключевых слов (<length> | <percentage>), либо не ключевое слово и значение auto
. Например:
background-size: cover; /* ключевое слово */
background-size: contain; /* ключевое слово */
background-size: 100% 50%; /* пара значений из не ключевых слов */
background-size: 300px 200px; /* пара значений из не ключевых слов */
background-size: 50% auto; /* не ключевое слово + плюс значение 'auto' */
Для пары значений первое значение задаёт ширину изображения, а второе значение задаёт высоту изображения.
Если указано только одно не ключевое значение, то второе считается как auto
.
Свойство background-size может принимать несколько значений разделённых запятыми, поэтому когда у элемента указано несколько изображений в свойстве background-image, каждое значение будет применяться к соответствующему фоновому изображению (первое значение для первого фонового изображения, второе значение для второго и т.д.).
Синтаксис свойства
- Синтакис:
background-size: <bg-size> [ , <bg-size> ]* /* где */ <bg-size> = [ <length> | <percentage> | auto ]{1,2} | cover | contain
- Значение по умолчанию:
auto
- Применяется: ко всем элементам
- Наследуется: да
- Анимируется: да, за исключением ключевых слов
Значения свойства
<length>
- значение <length> масштабирует фоновое изображения до указанного значения в соответствующем направлении. Нельзя указывать отрицательную длину.<percentage>
- значение указанное в процентах масштабирует фоновое изображения до указанных процентов относительно области позиционирования фона, который определяется свойством background-origin. Если значение свойстваbackground-origin
не указано автором, будет использовано значениеpadding-box
, то есть фоновое изображение позиционируется относительно системы координат фона, центр которой находится в верхнем левом углу.contain
- масштабирует изображение, сохраняя при этом его встроенное соотношение сторон, до наибольшего, чтобы его ширина и высота вписывались в область позиционирования. Если у фонового изображения нет встроенных пропорции и нет встроенного размера, то оно растягивается на всю область позиционирования.cover
- масштабирует изображение, сохраняя при этом его встроенное соотношение сторон, до наименьшего размера, чтобы его ширина и высота могли полностью покрывать область позиционирования. Если у фонового изображения нет встроенных пропорции и нет встроенного размера, то оно отображается в размере области позиционирования.auto
- ключевое слово, которое масштабирует фоновое изображение в соответствующем направлении, сохраняя его встроенные пропорции.- Если у изображения есть встроенные размере (высота и ширина), то оно будет отображаться со своими размерами.
- Если у изображения нет встроенных пропорций и размеров, то оно будет отображаться с размерами области позиционирования.
- Если у него нет размеров, но есть пропорции, то оно отобразиться так как-будто было установлено ключевое слово
contain
. - Если у изображения есть один из встроенных размеров и пропорция, то оно отобразиться с размерами определёнными этим одним размером и пропорцией.
- Если у изображения есть один из встроенных размеров, но нет пропорции, оно отобразиться с использованием этого одно встроенного размера и соответствуюещего размера области позиционирования.
Поддержка браузерами
CSS3 Background-image options
Пример
Ниже вы увидите пример использования свойства background-size
:
- Войдите или зарегистрируйтесь , чтобы оставлять комментарии