Эффект отскока на анимации CSS3
В данном уроке мы создадим визуальный эффект с помощью анимаций CSS3. В итоге должна получиться информационная панель, которая появляется с "отскоком".
Начало
Создаим документ HTML и добавим в него следующую структуру разметки для информационной панели.
<div class="css3-notification"> <p>Сообщение, которое появляется с отскоком.</p> </div>
Добавим стили для формирования внешнего вида панели:
.css3-notification { font-size: .8em; text-align: center; padding: 10px; background-color: #111; color: #fff; box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, .3); text-transform: uppercase; position: relative; font-weight: bold; }
В браузере наша панель должна выглядеть так:
Создаем кадры анимации CSS3
Основная идея заключается в формировании серии последовательных отскоков с уменьшающейся амплитудой до полной остановки объекта.
Шаг 1. Создаем кадры анимации
Начнем с создания кадров анимации CSS3. В нашем примере набор кадров имеет название bounce
.
В нашем уроке используется стандартный синтаксис @keyframe
из стандарта W3C для сохранения наглядности кода. Но в реальном приложении для сохранения кросс-браузерности нужно использовать префиксы браузеров (-webkit-
, -moz-
, -o-
), что вы можете увидеть в исходниках к уроку.
Шаг 2. определяем начальное положение
Сначала устанавливаем объект в верхнем положении. В трансформации CSS3 добавляем отрицательное значение для координаты по оси Y. Данное положение устанавливается от 0%
до 5%
временной шкалы анимации, то есть панель будет находится вверху очень недолго.
0% { transform:translateY(-100%); opacity: 0; } 5% { transform:translateY(-100%); opacity: 0; }
Шаг 3. Определяем первый отскок
Затем на интервале от 5%
до 15%
временной шкалы объект начинает движение в конечное положение. Устанавливаем для свойства translateY
значение 0%
.
Когда объект достигает конечного положения нижняя сторона должна деформироваться (имитируя последствия удара). В нашем случае уменьшим padding-bottom
от 10px
до 5px
.
15% { transform:translateY(0); padding-bottom: 5px; }
Объект отскакивает вверх после достижения поверхности. В данной точке объект подскакивает на максимальную высоту 50%
в момент 30%
временной шкалы.
30% { transform:translateY(-50%); }
Шаг 4. Определяем второй отскок
После достижения пика объект должен вернуться обратно в положение 0
, то есть "упасть". Объект немного деформирован после предыдущего удара, поэтому мы уменьшаем свойство padding-bottom
только до 6px
.
40% { transform:translateY(0%); padding-bottom: 6px; }
Затем происходит отскок.
Теперь точка подъема будет располагаться ниже, чем в первый раз - 30%
от текущего положения.
50% { transform:translateY(-30%); }
Шаг 5. Продолжаем отскакивать до полной остановки
События повторяются до конца анимации — от 70% до 100% временной шкалы анимации.
70% { transform:translateY(0%); padding-bottom: 7px; } 80% { transform:translateY(-15%); } 90% { transform:translateY(0%); padding-bottom: 8px; } 95% { transform:translateY(-7%); } 97% { transform:translateY(0%); padding-bottom: 9px; } 99% { transform:translateY(-3%); } 100% { transform:translateY(0); padding-bottom: 9px; opacity: 1; }
Готово!
Источник: http://feedproxy.google.com/~r/ruseller/CdHX/~3/IvtUjL1mQMQ/lessons.php
Дайджест новых статей по интернет-маркетингу на ваш email
Новые статьи и публикации
- 2024-04-22 » Комментирование кода и генерация документации в PHP
- 2024-04-22 » SEO в России и на Западе: в чем основные отличия
- 2024-04-22 » SEO для международного масштабирования
- 2024-04-22 » Как использовать XML-карты для продвижения сайта
- 2024-04-22 » Цифровой маркетинг: инструменты для продвижения и рекламы в 2024 году
- 2024-04-22 » Что такое CSS-модули и зачем они нам?
- 2024-04-17 » 23 сервиса для эффективного экспресс-аудита любого сайта
- 2024-04-08 » Яндекс переходит на новую версию Wordstat
- 2024-04-08 » Яндекс интегрировал в свой облачный сервис эмпатичную нейросеть
- 2024-04-08 » Новая версия нейросети Claude превзошла по мощности аналоги Google и OpenAI
- 2024-04-08 » Как пользоваться GPT 4 и Claude бесплатно и без VPN
- 2024-03-13 » Стратегии SEO на 2024 год
- 2024-03-13 » Как использовать анимацию с помощью JavaScript-библиотеки GSAP
- 2024-03-13 » Использование GSAP 3 для веб-анимации
- 2024-03-13 » Cогласование топографической съёмки с эксплуатирующими организациями
- 2024-02-19 » Теряются лиды? Как настроить сквозную аналитику
- 2024-02-17 » Мерч и IT: на что обратить внимание в 2024 году
- 2024-02-16 » Копируем с RSync: основные примеры синхронизации файлов
- 2024-02-15 » Лучшие noCode AI платформы для создания диалоговых ботов
- 2024-02-14 » Факторы ранжирования Google 2024 — исследование Semrush
- 2024-02-12 » Перенос сайта на другой хостинг
- 2024-02-05 » В России сформирован реестр хостинг-провайдеров
- 2024-02-04 » Использование SSH для подключения к удаленному серверу Ubuntu
- 2024-02-03 » Подключаемся к серверу за NAT при помощи туннеля SSH. Простая и понятная инструкция
- 2024-02-02 » Настройка CI/CD для Gitlab-репозитория: схемы и гайд по шагам
- 2024-02-01 » GitLab CI Pipeline. Запуск сценария через SSH на удаленном сервере
- 2024-01-29 » Introduction to GitLab’s CI/CD for Continuous Deployments
- 2024-01-26 » Настройка GitLab CI/CD
- 2024-01-25 » Установка shell gitlab runner
- 2024-01-25 » Установка и регистрация gitlab-runner в docker контейнере
Каждый человек имеет право на собственное мнение — при условии, что оно совпадает с нашим Шоу Джордж Бернард - 1856-1950) - английский писатель. В своем творчестве ниспровергал догматизм и предвзятость, традиционность представлений |
Мы создаем сайты, которые работают! Профессионально обслуживаем и продвигаем их , а также по всей России и ближнему зарубежью с 2006 года!
Как мы работаем
Заявка
Позвоните или оставьте заявку на сайте.
Консультация
Обсуждаем что именно Вам нужно и помогаем определить как это лучше сделать!
Договор
Заключаем договор на оказание услуг, в котором прописаны условия и обязанности обеих сторон.
Выполнение работ
Непосредственно оказание требующихся услуг и работ по вашему заданию.
Поддержка
Сдача выполненых работ, последующие корректировки и поддержка при необходимости.