Настройки
Вставьте код в чат ИИ-агента и напишите: «Сделай мне такой эффект на сайте». Инструкция для агента уже внутри.
Настройки для кода
Анимация при прокрутке. Секции по очереди прилипают к экрану, каждая следующая наезжает на предыдущую, а кадр под ней уменьшается, и кадры ложатся стопкой. CSS sticky и пара строк JavaScript, без GSAP. Настройте и скопируйте код.
Вставьте код в чат ИИ-агента и напишите: «Сделай мне такой эффект на сайте». Инструкция для агента уже внутри.
Листайте вниз: первый кадр прилипает к экрану, а следующий наезжает на него снизу, и первый уменьшается, будто отступает вглубь. Так кадры один за другим складываются в стопку, пока не кончится блок, а потом страница прокручивается дальше как обычно.
Прилипание сделано на чистом CSS: у каждой секции position: sticky, и браузер сам держит её на экране, пока следующая не наедет сверху. Скрипт только уменьшает кадры. Эффект сделан по мотивам «Sticky Cards» от Codegrid, но без GSAP и ScrollTrigger.
Через ИИ-агента — самый простой путь. Эти эффекты сделаны в первую очередь для тех, кто собирает сайт вместе с ИИ-агентом: Claude Code, Cursor или любым другим. Настройте эффект на примере выше, нажмите «Скопировать код» и вставьте его в чат агента с одной фразой: «Сделай мне такой эффект на сайте». В скопированном коде уже есть описание эффекта и инструкция для агента. Он сам перенесёт стили, разметку и скрипт и подставит ваши фото. Ваши настройки сохранятся.
Вручную. Кнопки кода — в настройках, под шестерёнкой в правом верхнем углу. «Скачать код» даёт готовую HTML-страницу с вашими настройками, «Скопировать код» — только стили, разметку и скрипт. Скрипт без зависимостей.
<div class="stack">
<section class="stack__section" data-stack-section>
<div class="stack__image" data-stack-image><img src="photo-1.jpg" alt=""></div>
</section>
<!-- ещё секции -->
</div>
.stack__section { position: sticky; top: 0; height: 100svh; }
createStickyStack(document.querySelector('.stack'), { shrink: 0.5 });
Одно важное условие: у блока и его родителей не должно быть overflow: hidden, иначе прилипание не работает. Если нужно обрезать края, используйте overflow: clip. Если на сайте закреплённая шапка, задайте секциям top, равный её высоте.
Это обычные секции с картинками, и всё содержимое доступно скринридерам. Если в системе включено «Уменьшить движение», кадры по-прежнему прилипают, но не уменьшаются. Прилипание делает браузер, а скрипт двигает только transform и засыпает, когда кадры догнали прокрутку.
Почему прилипание не работает на моём сайте? Почти всегда из-за overflow: hidden у одного из родителей блока. Замените его на overflow: clip или уберите.
Сколько кадров можно добавить? Сколько угодно: каждый занимает один экран прокрутки.
Нужен ли GSAP, как в оригинале? Нет. Прилипание делает CSS, а остальное — около 80 строк JavaScript.