Css3 background: background — CSS: Cascading Style Sheets

сокращенная запись — учебник CSS

Как вы заметили из предыдущих уроков, для стилизации фона в CSS существует большое количество свойств. И если вам нужно указать сразу несколько из них, рекомендуем использовать свойство background — это сокращенная запись, которая принимает множество значений и освобождает от необходимости писать каждое свойство для фона по отдельности (что, кстати, довольно долго и неудобно).

Порядок записи значений background

Свойство background объединяет все свойства для фона. Вы можете перечислить в нем значения для:

  • background-image
  • background-position
  • background-size (CSS3)
  • background-repeat
  • background-attachment
  • background-origin (CSS3)
  • background-clip (CSS3)
  • background-color

Порядок написания значений может быть произвольным — браузер сам определит соответствие свойств и значений. Но для схематичного пояснения мы используем последовательность из спецификации CSS:




Как видно на рисунке, мы пишем значения всех свойств через пробел как обычно. Исключением являются свойства background-position и background-size — их необходимо разделять знаком слэша /.

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

background по умолчанию следующие:


background-image: none;
background-position: 0% 0%;
background-size: auto;
background-repeat: repeat;
background-attachment: scroll;
background-origin: padding-box;
background-clip: border-box;
background-color: transparent;

Для примера запишем стиль через свойство background, определив только цвет фона (background-color) и порядок его обрезки (background-clip):


background: content-box #aaa;

Этот код эквивалентен такому коду:


background-image: none; /* осталось по умолчанию */
background-position: 0% 0%; /* осталось по умолчанию */
background-size: auto; /* осталось по умолчанию */
background-repeat: repeat; /* осталось по умолчанию */
background-attachment: scroll; /* осталось по умолчанию */
background-origin: content-box;
background-clip: content-box;
background-color: #aaa;

Здесь мы отметили те свойства, которые не изменились при написании сокращенной записи. И, наверное, вы уже видите, что свойство background-origin приняло такое же значение, как и background-clip, хотя мы вроде как не собирались его менять. Дело в том, что для background-origin и background-clip используются одинаковые ключевые слова — content-box, padding-box, border-box. И если указать только одно из этих ключевых слов в свойстве background, то оно будет применено сразу к двум свойствам. Если же вам понадобится указать разные значения для background-origin

и background-clip, запишите их рядом через пробел, как показано на схеме выше (здесь важна последовательность — сначала идет значение background-origin, затем — background-clip).

Влияние каскадности на свойства

В первой части нашей книги, в уроке, посвященном каскадности CSS, мы говорили, что если в таблице стилей указано два одинаковых свойства для одного селектора, то предпочтение отдается тому свойству, которое находится ниже по списку. Сейчас пора вспомнить об этой особенности и подумать о том, как ведут себя свойства группы background, если к одному элементу их применяется несколько.

Допустим, мы написали следующий код:


background-color: blue;
background: url(img/cat-transparent-bg.png) no-repeat;

Мы ожидаем увидеть изображение кота на синем фоне, но не тут-то было. Оказывается, второе свойство

background перезаписало первое значение background-color на значение по умолчанию (т. е. на transparent). Решить проблему можно, поменяв местами строки:


background: url(img/cat-transparent-bg.png) no-repeat;
background-color: blue;

А теперь мини-задача: если в последней строке этого кода заменить свойство background-color: blue на упрощенное свойство background: blue, как вы думаете, что произойдет с фоновым рисунком и значением no-repeat?

Рекомендации по использованию сокращенного свойства

Безусловно, использование «мульти»-свойства background может сэкономить место в таблице стилей и сберечь ваше время, но оно также может и повлечь за собой неприятности, часть из которых мы только что рассмотрели. Поэтому используйте данное свойство с умом. Если вам требуется добавить только цвет фона, лучше используйте для этого отдельное свойство background-color. То же самое касается и всего остального.

Кроме того, если вам потребуется писать стили с учетом поддержки браузера Internet Explorer 8 (или более ранних версий), а в свойстве background у вас будут содержаться значения для свойств CSS3, то браузер не сможет считать их и полностью проигнорирует свойство background. Поэтому свойства из CSS3 рекомендуется записывать по отдельности.


Далее в учебнике: устанавливаем несколько фоновых рисунков для элемента.

Новая функция фонового положения в CSS | Элад Шехтер

Всем привет. Я предполагаю, что большинство из вас использовали или имеют опыт работы со свойством background-position CSS, но, возможно, вы не знали, что это смещение позиционирования фоновых изображений.

(Это сообщение было первоначально опубликовано в июне 2013 года и обновлено, так как оно актуально и сегодня)

В background-position, до появления CSS3, вы должны были устанавливать позицию в верхнем левом углу элемента.
Например:

 div{ 
background-position: 20px 40px;
/* 20 пикселей слева и 40 пикселей сверху */
}

Проблема заключалась в том, что невозможно было определить точное положение по другому ориентиру, например снизу/справа. Вы можете начать только с левого верхнего!

Раньше мы считали, что можем устанавливать только такие значения, как: фоновая позиция: справа внизу или фоновая позиция: 70% 80% (70% слева, 80% сверху), но мы не могли установить значение 20 пикселей справа и 20 пикселей снизу, например.

Чтобы решить эту проблему, CSS3 предоставил нам возможность определить опорную точку для нашего позиционирования и тем самым определить нашу точку 0,0.

Вместо того, чтобы записывать только 2 значения (горизонтальная и вертикальная точки слева вверху), CSS3 теперь позволяет нам записывать начальную точку горизонтального и вертикального положения вместе с их смещениями, например: справа 10 пикселей снизу 20 пикселей (всего 4 значения ).

Создадим пример:

Сначала создадим пустой DIV с некоторыми стилями:

HTML

 

CSS

 .box{ 
width:300px;
высота: 300 пикселей;
цвет фона:#ddd;
отступы: 10 пикселей;
граница: сплошная 3 пикселя #333;
радиус границы: 10 пикселей;
}

Теперь мы добавим фоновое изображение с фиксированным размером, используя свойство background-size.

 .box{ 
background:url(images/image.jpg) без повтора;
размер фона: 150 пикселей 150 пикселей;
}

И, наконец, мы добавим значение New Background Position.

Сначала задаем начальную точку по горизонтали, например: «справа». Затем мы можем установить желаемое расстояние от этой позиции, например 20px.
Во-вторых, мы устанавливаем вертикальную начальную точку, например: «нижняя» и желаемое расстояние от этой позиции, например 40px.

CSS new background-position

 . box{ background-position :  right 20px bottom 40px  ;} 

Вот что мы получим:

Живой пример

Ура! мы сделали это.

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

  • Работает во всех новых браузерах!
  • IE — работает с IE9 и выше.

См. поддержку по смещениям границ CSS-позиции фона на сайте caniuse

Вот и все,

Я — Элад Шехтер, веб-разработчик, специализирующийся на дизайне и архитектуре CSS и HTML, работаю в Investing.com.

Больше сообщений CSS, которые я написал:
Поздоровайтесь с Background-Origin и Background-Clip!
CSS Position Sticky — как это работает на самом деле!
CSS-архитектура для нескольких веб-сайтов с SASS
Адаптивный дизайн: лучшие практики для больших проектов
Стать ниндзя CSS Grid!

Вы можете связаться со мной или подписаться на меня:
Мой Twitter
Facebook
LinkedIn

Вы можете найти меня в моих группах Facebook:
Мастера CSS
Мастера CSS Израиль

Начало работы с фоном CSS

Главная/Блог/Учебник по CSS: Начало работы с фоном CSS

10 сентября 2021 г. — 8 мин чтения

Эрин Шаффер

CSS — это важный язык, который мы можем использовать для таких задач, как стилизация основного текста документа, анимация и веб-разработка. Существует множество различных свойств CSS, которые мы можем использовать для управления и настройки наших веб-страниц. Фон CSS — одно из таких свойств. Мы можем использовать свойство фона CSS, чтобы установить цвета фона, изображения, размеры и многое другое. Сегодня мы собираемся обсудить это полезное свойство CSS и изучить все различные вещи, которые мы можем с ним делать.

Начнем!

Мы рассмотрим :

  • Что такое фон CSS?
  • Фоновое изображение CSS
  • Цвет фона
  • Размер фона
  • Фоновое положение
  • Повтор фона
  • Фоновое крепление
  • Фоновый градиент
  • Подведение итогов и следующие шаги

Что такое фон CSS?

Фон CSS является сокращенным свойством CSS . Мы можем использовать сокращенные свойства для одновременной установки значений нескольких свойств CSS. Это означает, что мы можем писать читаемый код быстрее и эффективнее. Мы можем использовать свойства фона для управления фоном элемента.

Фон CSS позволяет нам управлять многими свойствами фона, такими как:

  • Цвет
  • Размер
  • Позиция
  • Повторить
  • Приложение
  • Градиент
  • Изображение
  • Непрозрачность
  • И т. д.

Существует обширная поддержка браузера для фона CSS. Поддерживается следующими браузерами:

  • Хром
  • Край
  • Фаерфокс
  • Internet Explorer
  • Опера
  • Сафари

Фоновое изображение CSS

Мы можем использовать свойство background-image, чтобы установить фоновые изображения для различных элементов. Современные браузеры поддерживают различные типы файлов изображений, такие как JPG, PNG, IMG, GIF и SVG. Мы также можем установить резервный цвет, который будет отображаться в случае, если наше изображение не загрузится или наш браузер не поддерживает наш тип файла изображения.

Чтобы установить фоновое изображение для страницы, мы можем использовать следующий код:

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

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

Если мы хотим установить резервный цвет, мы можем использовать следующий код:


Цвет фона

Свойство background-color позволяет нам применять сплошные цвета в качестве фона для элементов. Существуют различные значения свойств, которые мы можем использовать для управления аспектами цвета фона. Эти значения включают:

  • цвет : Это значение указывает цвет фона. Мы можем выбрать из списка значений цвета CSS, чтобы выбрать точные цвета, которые мы хотим использовать.

  • непрозрачность : Это значение определяет прозрачность элемента.

  • прозрачный : Это значение указывает, что цвет фона прозрачный.

  • начальный : для свойства будет установлено значение по умолчанию.

  • наследовать : свойство будет унаследовано от родительского элемента.

Мы также можем установить разные цвета фона для разных элементов. Вот пример:

Мы также можем использовать число от 0.0 до 1.0 , чтобы установить непрозрачность нашего фонового цвета. Чем меньше число, тем прозрачнее цвет.

Рассмотрим пример:


Размер фона

Свойство background-size позволяет указать размер фонового изображения.


Положение фона

Свойство background-position позволяет указать начальную позицию фонового изображения. Фоновые изображения по умолчанию помещаются в верхний левый угол элемента. Это свойство имеет различные значения свойств, которые позволяют нам контролировать расположение наших фоновых изображений. Эти значения включают:

  • слева вверху : Фоновое изображение будет начинаться слева вверху.
  • слева внизу : Фоновое изображение будет начинаться слева внизу.
  • слева от центра : Фоновое изображение будет начинаться слева от центра.
  • справа вверху : Фоновое изображение будет начинаться справа вверху.
  • справа внизу : Фоновое изображение будет начинаться справа внизу.
  • справа по центру : Фоновое изображение будет начинаться справа от центра.
  • центр вверху : Фоновое изображение будет начинаться в центре вверху.
  • по центру снизу : Фоновое изображение будет начинаться по центру снизу.
  • центр центр : Фоновое изображение будет начинаться в центре центра.
  • x% y% : Значение x соответствует горизонтальному положению, а значение y соответствует вертикальному положению. Верхний левый угол равен 0% 0% , а нижний правый угол равен 9.0309 100% 100% .
  • xpos ypos : Значение xpos — это горизонтальное положение, а значение ypos — вертикальное положение. Верхний левый угол — это значение 0 0 .
  • начальный : для свойства будет установлено значение по умолчанию.
  • наследовать : свойство будет унаследовано от родительского элемента.

Продолжайте изучать CSS бесплатно.

Начните бесплатное знакомство с CSS, HTML и JavaScript с помощью нашей 1-недельной безлимитной образовательной пробной версии. Текстовые схемы обучения Educative легко просматриваются и включают живую среду кодирования, что делает обучение быстрым и эффективным.

Стать разработчиком внешнего интерфейса


Повтор фона

Свойство background-repeat позволяет указать, повторяются ли фоновые изображения и если да, то как. Фоновые изображения повторяются по вертикали и по горизонтали по умолчанию. Это свойство имеет много различных значений свойств, которые позволяют нам управлять тем, как будут представлены наши фоновые изображения. Давайте посмотрим на значения и что они делают:

  • повтор : Фоновое изображение повторяется по вертикали и горизонтали. Он обрежет финальное изображение, если оно не подходит.
  • Repeat-x : Фоновое изображение повторяется по горизонтали.
  • Repeat-y : Фоновое изображение повторяется по вертикали.
  • без повтора : фоновое изображение не будет повторяться (оно будет показано только один раз).
  • пробел : фоновое изображение будет повторяться столько раз, сколько возможно без обрезки. Первое и последнее изображения размещаются в начале и в конце элемента, а пробелы равномерно распределяются между повторяющимися изображениями.
  • round : фоновое изображение будет повторяться и манипулироваться, чтобы полностью заполнить пространство (без пробелов между ними).
  • начальный : для свойства будет установлено значение по умолчанию.
  • наследовать : свойство будет унаследовано от родительского элемента.

Фоновое вложение

Мы можем использовать свойство background-attachment, чтобы указать, хотим ли мы, чтобы наши фоновые изображения были фиксированными, или мы хотим, чтобы они перемещались вместе с остальной частью страницы при прокрутке. Это свойство имеет разные значения свойств, которые позволяют нам управлять тем, как мы прикрепляем наши фоновые изображения . Эти значения включают:

  • исправлено : Фоновое изображение не прокручивается вместе со страницей.

  • локальный : Фоновое изображение прокручивается вместе с содержимым элемента.

  • прокрутка : Фоновое изображение прокручивается вместе со страницей.

  • начальный : для свойства будет установлено значение по умолчанию.

  • наследовать : свойство будет унаследовано от родительского элемента.

Давайте рассмотрим пример фиксированного значения :

Теперь давайте рассмотрим пример прокрутки значения. Это заставит изображение прокручиваться вместе со страницей.


Градиент фона

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

Линейные градиенты

Свойство linear-gradient позволяет создавать линейные градиенты сверху вниз, слева направо и по диагонали. Мы должны определить по крайней мере два цветовых маркера, которые представляют собой цвета, которые мы хотим передать вместе. Мы можем определить несколько остановок цвета и повторить градиенты, если захотим.

Давайте посмотрим на базовый линейный градиент, который проходит сверху вниз с двумя цветами:

Теперь давайте посмотрим на вертикальный линейный градиент, который имеет несколько цветов и создает радугу:

Радиальные градиенты

С помощью свойства радиального градиента мы можем создать градиент, определяемый его центром. Форма радиальных градиентов по умолчанию — эллипс, но ее можно изменить на круг. Мы должны определить по крайней мере две точки цвета с радиальными градиентами, но мы можем определить несколько, если хотим. Подобно линейным градиентам, мы также можем повторять радиальные градиенты.

Давайте посмотрим на базовый радиальный градиент с тремя цветами:

Теперь давайте посмотрим на повторяющийся радиальный градиент:


Завершение и следующие шаги

Поздравляем с первыми шагами в CSS! Есть много разных способов, которыми мы можем манипулировать нашими веб-страницами, используя различные свойства, которые мы исследовали сегодня. CSS — важная часть веб-разработки. Нам еще многое предстоит узнать о файлах CSS. Ниже приведены некоторые рекомендуемые темы для обсуждения:

  • Flexbox
  • Селекторы CSS
  • Встроенные и блочные элементы
  • HTML-шаблоны и HTML-элементы

Чтобы начать изучение этих и других концепций, ознакомьтесь с планом обучения Educative «Стать разработчиком переднего плана» . На этом пути практического обучения вы освоите HTML, CSS и JavaScript, чтобы создавать красивые и функциональные веб-сайты и веб-приложения.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *