ГРУППА КУРСА
|
Главная >
Учебник CSS >
Фон блока в CSSУ блока может быть различный фон, в том числе, прозрачный. В CSS прозрачный фон установлен по умолчанию. То есть, можно видеть то, что находится за блоком, за исключением мест, занятых контентом. Но есть возможность изменить фон блока. Он может иметь любой цвет. Также фоном может быть картинка. В этой теме мы рассмотрим, как это делается. Цвет фона блокаСвойство background-color устанавливает цвет фона. В значении указывается цвет одним из способов, существующих в CSS. Кроме того, свойство принимает такие значения: background-color: transparent - прозрачный фон (по умолчанию) background-color: inherit - значение принимается от родительского элемента Значение transparent используется в CSS, когда нужно вернуть прозрачный фон блоку, если ранее он уже был изменён. Создадим блок, зададим ему размеры и установим цвет фона. Стиль: +
HTML код:
Область заполнения фонаФон может зополнять разные области блока. Область задаётся с помощью свойства background-clip. Оно принимает такие значения: background-clip: border-box - весь блок вместе с рамкой (по умолчанию) background-clip: padding-box - весь блок без рамки background-clip: content-box - фон заполняет только область содержимого
При значении border-box заполняются только прозрачные части рамки. Если рамка сплошная и непрозрачная, то за ней фон не отображается. Добавим на страницу блок, зададим ему рамку и внутренние отступы. Установим фон, заполняющий только содержимое блока: Стиль:
HTML код:
Фон в виде картинкиВ CSS есть возможность использовать в качестве фона картинку. Для этого есть свойство background-image. Значением этого свойства является путь к файлу картинки. Он указывается так: background-image: url("путь к файлу"); Для примера можно использовать это изображение. Нажмите на него правой кнопкой мыши и сохраните с именем image. Разместите файл в той же папке, где находится страница. Иначе путь к файлу нужно указывать не так, как в примере. Добавим блок с размерами 400 на 250, чуть меньше, чем изображение. И установим фон в виде картинки: Стиль:
HTML код:
Не забывайте, что так устанавливается именно фон блока. На нём можно разместить контент. Размер фоновой картинкиСвойство background-size устанавливает размеры фоновой картинки. Оно определяет не размер фона, а именно размер изображения. Размеры фона зависят от размеров блока. А свойство background-size влияет на картину, которая становится фоном. Значение свойства можно указать в единицах измерения CSS или процентах. Сначала пишется ширина и через пробел высота. Если не соблюсти пропорции ширины и высоты, то изображение искажается. Также у свойства background-size есть такие значения: background-size: auto - если указано только это значение, то изображение имеет свои реальные размеры. Если один из размеров задан в единицах измерения, то второму размеру можно указать auto, чтобы у картинки были правильные пропорции. background-size: cover - картинка заполняет весь фон, сохраняя пропорции. background-size: contain - вся картинка отображается в фоне. Значения cover и contain есть также у свойства object-fit. В теме про него эти значения рассмотрены более подробно. Укажем размер фоновой картинке:
Позиционирование изображенияВ прошлом примере виден левый верхний угол изображения. При этом картинка оказалась обрезанной справа и снизу из-за того, что блок меньше изображения. Существует возможность расположить изображение по-другому, чтобы были видны другие части. Для этого используется позиционирование. Его устанавливает свойство background-position. В значении пишутся два слова через пробел. Первое слово - это горизонтальное позиционирование. Значение может быть left, center или right. Второе слово - это вертикальное позиционирование. Значение может быть top, center или bottom. Расположим изображение справа сверху.
Повторение изображенияДобавим на страницу ещё один блок и установим фон в виде того же изображения. Но теперь размеры блока будут намного больше размеров картинки. Пока мы не будем ничего менять, чтобы посмотреть, как выглядит блок. Вы увидите, что изображение повторяется для полного заполнения блока. Добавим блоку рамку, чтобы видеть его размеры. Стиль:
HTML код:
Чтобы изменить повторение изображения, используется свойство background-repeat. Оно принимает такие значения: background-repeat: repeat - повторяется по горизонтали и по вертикали (по умолчанию) background-repeat: repeat-x - повторяется только по горизонтали background-repeat: repeat-y - повторяется только по вертикали background-repeat: no-repeat - не повторяется background-repeat: inherit - значение принимается от родительского элемента Изменим фон блока так, чтобы изображение не повторялось.
В такой ситуации тоже можно использовать позиционирование изображения. Значением свойства background-position могут быть не только слова, но и два числа в единицах измерения CSS, указанные через пробел. Это отступы изображения от левого верхнего угла блока. Попробуйте разные способы повторения изображения. Прокрутка фонаЕсть возможность установить, как будет двигаться фон блока при прокрутке страницы, а также при прокрутке самого блока. Это делается с помощью свойства background-attachment. Оно может принимать такие значения: background-attachment: scroll - фон не движется относительно блока и движется вместе с блоком при прокрутке страницы (по умолчанию) background-attachment: fixed - фон зафиксирован относительно левого верхнего угла окна браузера background-attachment: local - фон движется вместе с содержимым при прокрутке блока Добавим на страницу ещё один блок с фоном в виде изображения. Разместим его в самом начале страницы, то есть этот блок должен находиться выше других. Добавим в него вложенный блок с большой высотой, чтобы появилась прокрутка. Сделаем так, чтобы фон прокручивался вместе с содержимым блока. Стиль:
HTML код:
Попробуйте установить другие варианты прокрутки фона. Посмотрите, как будет двигаться фон блока. |