Применение стилей фона в CSS

CSSCSSBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

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

Установка цвета фона для HTML-элементов

В этом шаге вы научитесь настраивать цвета фона для HTML-элементов с использованием CSS. Цвета фона - это фундаментальный способ улучшить визуальный дизайн веб-страниц, добавляя цвета к различным элементам.

Сначала создадим HTML-файл, чтобы продемонстрировать стилирование цвета фона. Откройте WebIDE и создайте новый файл с именем styles.html в каталоге ~/project.

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Пример цвета фона</title>
    <style>
      /* Здесь мы добавим наш CSS */
    </style>
  </head>
  <body>
    <div class="box1">Первый бокс</div>
    <div class="box2">Второй бокс</div>
    <p class="paragraph">Это абзац с цветом фона.</p>
  </body>
</html>

Теперь добавим CSS, чтобы установить цвета фона для различных элементов. Обновите раздел <style> в HTML-файле:

.box1 {
  background-color: blue;
  color: white;
  padding: 20px;
  margin: 10px;
}

.box2 {
  background-color: #ff5733;
  color: white;
  padding: 20px;
  margin: 10px;
}

.paragraph {
  background-color: rgb(200, 230, 255);
  padding: 15px;
}

В этом примере мы продемонстрировали три способа указания цветов фона:

  1. Названный цвет (blue)
  2. Шестнадцатеричный код цвета (#FF5733)
  3. Функция RGB цвета (rgb(200, 230, 255))

Сохраните файл и откройте его в веб-браузере, чтобы увидеть разные цвета фона, примененные к элементам.

Добавление фонового изображения с настройкой размеров

В этом шаге вы научитесь добавлять фоновые изображения к HTML-элементам и настраивать их размеры с использованием CSS. Продолжим работать над предыдущим примером, изменив файл styles.html в каталоге ~/project.

Сначала вам нужно скачать образец изображения. Используйте следующую команду в терминале:

wget https://labex.io/courses/images/background-sample.jpg -O ~/project/background-sample.jpg

Теперь обновите файл styles.html следующим содержанием:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Настройка размеров фонового изображения</title>
    <style>
      .image-container {
        width: 500px;
        height: 300px;
        border: 2px solid black;
        margin: 20px;
      }

      .cover-background {
        background-image: url("background-sample.jpg");
        background-size: cover;
      }

      .contain-background {
        background-image: url("background-sample.jpg");
        background-size: contain;
      }

      .custom-size-background {
        background-image: url("background-sample.jpg");
        background-size: 200px 150px;
      }
    </style>
  </head>
  <body>
    <div class="image-container cover-background">
      Cover: Заполняет весь контейнер
    </div>
    <div class="image-container contain-background">
      Contain: Подгоняет целое изображение
    </div>
    <div class="image-container custom-size-background">
      Custom Size: 200x150 пикселей
    </div>
  </body>
</html>

В этом примере демонстрируются три различных способа настройки размеров фоновых изображений:

  1. background-size: cover; - Масштабирует изображение так, чтобы заполнить весь контейнер
  2. background-size: contain; - Масштабирует изображение так, чтобы оно целиком поместилось внутри контейнера
  3. background-size: 200px 150px; - Задает конкретный размер в пикселях для фонового изображения

При открытии этого HTML-файла в браузере вы увидите три различных техники настройки размеров фоновых изображений.

Позиционирование фонового изображения

В этом шаге вы научитесь управлять позиционированием фоновых изображений с использованием CSS. Продолжим изменять файл styles.html в каталоге ~/project, чтобы продемонстрировать различные методы позиционирования фона.

Обновите файл styles.html следующим содержанием:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Позиционирование фонового изображения</title>
    <style>
      .image-container {
        width: 500px;
        height: 300px;
        border: 2px solid black;
        margin: 20px;
        color: white;
        font-weight: bold;
      }

      .top-left {
        background-image: url("background-sample.jpg");
        background-size: cover;
        background-position: top left;
      }

      .center {
        background-image: url("background-sample.jpg");
        background-size: cover;
        background-position: center;
      }

      .bottom-right {
        background-image: url("background-sample.jpg");
        background-size: cover;
        background-position: bottom right;
      }

      .custom-position {
        background-image: url("background-sample.jpg");
        background-size: cover;
        background-position: 20% 80%;
      }
    </style>
  </head>
  <body>
    <div class="image-container top-left">Позиция в верхнем левом углу</div>
    <div class="image-container center">Центральная позиция</div>
    <div class="image-container bottom-right">Позиция в нижнем правом углу</div>
    <div class="image-container custom-position">
      Пользовательская позиция (20% 80%)
    </div>
  </body>
</html>

В этом примере демонстрируются четыре различных способа позиционирования фоновых изображений:

  1. background-position: top left; - Позиционирует изображение в верхнем левом углу
  2. background-position: center; - Центрирует изображение внутри контейнера
  3. background-position: bottom right; - Позиционирует изображение в нижнем правом углу
  4. background-position: 20% 80%; - Использует процентные значения для пользовательского позиционирования

При открытии этого HTML-файла в браузере вы увидите, как различные значения позиционирования влияют на расположение фонового изображения.

Управление повторением фонового изображения

В этом шаге вы научитесь управлять повторением фоновых изображений с использованием свойства CSS background-repeat. Продолжим изменять файл styles.html в каталоге ~/project, чтобы продемонстрировать различные методы повторения.

Обновите файл styles.html следующим содержанием:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Повторение фонового изображения</title>
    <style>
      .image-container {
        width: 500px;
        height: 300px;
        border: 2px solid black;
        margin: 20px;
        color: white;
        font-weight: bold;
      }

      .repeat {
        background-image: url("background-sample.jpg");
        background-size: 100px 100px;
        background-repeat: repeat;
      }

      .repeat-x {
        background-image: url("background-sample.jpg");
        background-size: 100px 100px;
        background-repeat: repeat-x;
      }

      .repeat-y {
        background-image: url("background-sample.jpg");
        background-size: 100px 100px;
        background-repeat: repeat-y;
      }

      .no-repeat {
        background-image: url("background-sample.jpg");
        background-size: 200px 200px;
        background-repeat: no-repeat;
      }
    </style>
  </head>
  <body>
    <div class="image-container repeat">Повтор (По умолчанию)</div>
    <div class="image-container repeat-x">Повтор по горизонтали</div>
    <div class="image-container repeat-y">Повтор по вертикали</div>
    <div class="image-container no-repeat">Без повторения</div>
  </body>
</html>

В этом примере демонстрируются четыре различных способа повторения фоновых изображений:

  1. background-repeat: repeat; - Повторяет изображение как по горизонтали, так и по вертикали (по умолчанию)
  2. background-repeat: repeat-x; - Повторяет изображение только по горизонтали
  3. background-repeat: repeat-y; - Повторяет изображение только по вертикали
  4. background-repeat: no-repeat; - Предотвращает повторение изображения

При открытии этого HTML-файла в браузере вы увидите, как различные значения повторения влияют на отображение фонового изображения.

Объединение нескольких свойств фона

В этом шаге вы научитесь объединять несколько свойств фона, чтобы создавать более сложные и интересные дизайны фона. Мы изменим файл styles.html в каталоге ~/project, чтобы продемонстрировать продвинутые методы стилизации фона.

Обновите файл styles.html следующим содержанием:

<!doctype html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <title>Несколько свойств фона</title>
    <style>
      .image-container {
        width: 600px;
        height: 400px;
        border: 2px solid black;
        margin: 20px;
        color: white;
        font-weight: bold;
        padding: 20px;
      }

      .multiple-backgrounds {
        background-image:
          linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
          url("background-sample.jpg");
        background-size: cover, cover;
        background-position: center, center;
        background-repeat: no-repeat, no-repeat;
      }

      .layered-backgrounds {
        background-image:
          url("small-pattern.png"), linear-gradient(to right, #ff6b6b, #4ecdc4);
        background-size:
          100px 100px,
          cover;
        background-position:
          top left,
          center;
        background-repeat: repeat, no-repeat;
      }
    </style>
  </head>
  <body>
    <div class="image-container multiple-backgrounds">
      Фон с наложением изображения
    </div>
    <div class="image-container layered-backgrounds">
      Слоистый фон с узором и градиентом
    </div>
  </body>
</html>

Сначала загрузите изображение с маленьким узором:

wget https://labex.io/courses/images/small-pattern.png -O ~/project/small-pattern.png

В этом примере демонстрируются два продвинутых метода оформления фона:

  1. Несколько фонов с наложением:

    • Использует линейный градиент для создания полупрозрачного наложения
    • Объединяет градиент с фоновым изображением
    • Применяет одинаковые размеры, позиционирование и повторение
  2. Слоистые фоны:

    • Объединяет повторяющийся узорный рисунок с линейным градиентом
    • Использует разные размеры и позиционирование для каждого слоя фона

При открытии этого HTML-файла в браузере вы увидите, как несколько свойств фона могут создавать сложные и визуально интересные дизайны.

Резюме

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

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