Анимация при скролле. Как создавать такие анимации?

182
31 августа 2021, 22:20

Мучает вопрос с анимацией(примеры ниже), никак не могу найти в интернете, может неправильно ищу. Мне никак не понятно каким образом всё это работает, я и js код посмотрел, кое что еле еле понял, не всё понятно было. Может есть руководство, ну, типо алгоритм создания таких анимаций.

  1. Анимация при скролле. Такое ощущение что сайт не скролится, но на самом деле всё происходит при скроле страницы. 1 сайт - второй блок, так же блок "ШИРОКИЕ ВОЗМОЖНОСТИ"

  2. И ещё интересует вот такая линия SVG, как примерно такое получают? 2 сайт - третий блок

Answer 1

Вот пример подобной анимации, меняется одна css переменная, от которой все отталкивается

let elements = document.querySelectorAll('.animated-by-scroll'); 
 
addEventListener('scroll', () => { 
  document.body.style.setProperty('--scroll', window.scrollY); 
})
body { 
  height: 4000px; 
  --scroll: 0; 
  overflow-x:hidden; 
} 
 
.rect { 
  position: absolute; 
  width: 50px; 
  height: 50px; 
} 
 
.rect1 { 
  background-color: hsl(calc(var(--scroll) * 0.1), 55%, 55%); 
  transform: translate(calc(50vw - 50%), calc(80vh - 50%))  
              rotate(calc(var(--scroll) * 0.5deg)) 
              scale(calc(calc(var(--scroll) * 0.01) + 1)); 
} 
 
.rect2 { 
  background-color: hsl(calc(var(--scroll) * 0.4), 55%, 55%); 
  transform: translate(calc(0.1vw * var(--scroll)), calc(80vh - 50%)); 
} 
 
.rect3 { 
 background-color: hsl(calc(var(--scroll)), 55%, 55%); 
  transform: translate(calc(90vw - calc(0.1vw * var(--scroll))), calc(100vh - 50%)); 
}
<div class="rect rect1"></div> 
<div class="rect rect2"></div> 
<div class="rect rect3"></div>

READ ALSO
Запись и считывание XML файла

Запись и считывание XML файла

Подскажите, у меня есть форма с textbox'ами, как мне записать данные с них в XML файл, и потом считать данные с файла в один отдельный textbox строкой

108
С# Visual Studio Перенос папки из проекта в debug/release

С# Visual Studio Перенос папки из проекта в debug/release

Есть проект с исходным кодом, и папочка Extensions, (она не используется на этапе компиляции, а только после старта приложения) Как мне заставить...

201
Растягивание объекта сверху вниз

Растягивание объекта сверху вниз

Есть объект ПУСТЫШКА в нем есть объект РЕЗИНКА и объект ИГЛАНа РЕЗИНКЕ весит скрипт:

116