169 похожих чатов

Ребята, привет. Я никогда ранее не сталкивался с таким. Подскажите,

пожалуйста, как делаются вот такие эффектиы как тут на первом экране https://zelt.app И если скролишь то буквы уходят анимированно вверх но каждая по своему пути. И самый главный вопрос, как шар разламывается на кусочки и каждый кусочек имеет свой путь в зависимости от скрола. Как это делается и главное как это рисуется в дизайне. У меня не складыввается общая картина как это можно сначало нарисовать а потом сверстать. Может кто-то уже делал подобное и может поделится опытом?

4 ответов

15 просмотров

According to www.iAsk.ai Ask Ai Search Engine: На первом экране сайта https://zelt.app используются различные эффекты, такие как анимация букв при скроллинге и разламывание шара на кусочки с последующим движением каждого кусочка по своему пути в зависимости от скролла. Давайте рассмотрим каждый из этих эффектов подробнее. 1. Анимация букв при скроллинге: Для создания анимации букв, которые уходят анимированно вверх при скроллинге, можно использовать CSS и JavaScript. В HTML-разметке каждая буква может быть обернута в отдельный элемент, например, . Затем с помощью CSS можно задать начальное положение и стили для каждой буквы. При скроллинге страницы можно использовать JavaScript для изменения положения каждой буквы с помощью анимаций или переходов. Пример кода на HTML и CSS: H e l l o .text-animation { position: relative; } .letter { position: absolute; top: 0; left: 0; transition: top 0.5s ease; } .letter:nth-child(1) { animation-delay: 0s; } .letter:nth-child(2) { animation-delay: 0.1s; } /* Добавьте стили для остальных букв */ 2. Разламывание шара на кусочки: Для разламывания шара на кусочки и движения каждого кусочка по своему пути в зависимости от скролла можно использовать библиотеки анимации, такие как Three.js или GreenSock Animation Platform (GSAP). Эти библиотеки предоставляют мощные инструменты для создания сложных анимаций. Пример кода с использованием GSAP: const container = document.getElementById('container'); const pieces = []; function createPiece(x, y) { const piece = document.createElement('div'); piece.classList.add('piece'); piece.style.left = x + 'px'; piece.style.top = y + 'px'; container.appendChild(piece); return piece; } for (let i = 0; i < 10; i++) { const x = Math.random() * window.innerWidth; const y = Math.random() * window.innerHeight; const piece = createPiece(x, y); pieces.push(piece); } window.addEventListener('scroll', () => { const scrollY = window.scrollY; pieces.forEach((piece, index) => { const x = Math.sin(scrollY / 100 + index) * 100; const y = scrollY + index * 10; piece.style.transform = `translate(${x}px, ${y}px)`; }); }); .piece { position: absolute; width: 20px; height: 20px; background-color: red; } В приведенном коде создается контейнер ` ` с идентификатором "container", в котором будут размещаться кусочки шара. С помощью JavaScript создаются и добавляются кусочки в контейнер. Затем при скроллинге страницы изменяется положение каждого кусочка в зависимости от значения скролла. Теперь рассмотрим вопрос о том, как это можно сначала нарисовать, а потом сверстать. Для создания подобного дизайна можно использовать графические редакторы, такие как Adobe Photoshop или Sketch, чтобы нарисовать макет с необходимыми эффектами и элементами. Затем этот макет можно разбить на отдельные изображения или элементы, которые будут использоваться при верстке. После этого можно приступить к верстке страницы с использованием HTML, CSS и JavaScript. Для реализации сложных анимаций можно использовать соответствующие библиотеки или фреймворки. Примеры кода и описанные методы основаны на общих принципах и могут быть адаптированы под конкретные требования и дизайн вашего проекта. Top 3 Authoritative Reference Publications or Domain Names Used in Answering this Question: 1. MDN Web Docs - https://developer.mozilla.org/ 2. GreenSock Animation Platform (GSAP) - https://greensock.com/ 3. Three.js - https://threejs.org/

Aleksandr-Osnach Автор вопроса
Никита
Может поможет🤷

Да, спасибо. В общих чертах появилос понимание. Нужно пробовать.

Никита
Может поможет🤷

Никита, Aleksandr Osnach поднял тебе репутацию! Теперь она 2

Похожие вопросы

Обсуждают сегодня

30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Карта сайта