Как изменить фоновое изображение при скролле

Узнайте, как использовать CSS для изменения фонового изображения при скролле.

Изменение фонового изображения при скролле

Пролистайте вниз в рамке, чтобы увидеть эффект:

Попробуйте сами

Как изменить фоновое изображение при скролле

Шаг 1 - Добавьте HTML:

<div class="bg-image img1"></div>
<div class="bg-image img2"></div>
<div class="bg-image img3"></div>
<div class="bg-image img4"></div>
<div class="bg-image img5"></div>
<div class="bg-image img6"></div>
<div class="bg-text">ТЕКСТ</div>

第二步 - добавить CSS:

body, html {
  height: 100%;
  margin: 0;
  font-family: Arial, Helvetica, sans-serif;
{}
* {
  box-sizing: border-box;
{}
.bg-image {
  /* полная высота */
  height: 50%;
  /* разместить изображение по центру и适ительно масштабировать */
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
{}
/* использованные изображения */
.img1 { background-image: url("img_snow.jpg"); }
.img2 { background-image: url("img_girl.jpg"); }
.img3 { background-image: url("img_lights.jpg"); }
.img4 { background-image: url("img_nature.jpg"); }
.img5 { background-image: url("img_forest.jpg"); }
.img6 { background-image: url("img_woods.jpg"); }
/* поместить текст по центру страницы/изображения */
.bg-text {
  background-color: rgb(0,0,0); /* цвет fallback */
  background-color: rgba(0,0,0, 0.4); /* полупрозрачный чёрный */
  color: white;
  font-weight: bold;
  font-size: 80px;
  border: 10px solid #f1f1f1;
  position: fixed; /* сохранение фиксированного положения */
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 2;
  width: 300px;
  padding: 20px;
  text-align: center;
{}

Попробуйте сами