Анимация CSS3. Создание баннеров
Автор учебного курса: Евгений Федоров
Арефьева Анастасия Александровна,
студентка гр. ЗКТ-402С СТЭМИ, выпуск 2019 г.
Федоров Евгений Евгеньевич,
преподаватель информатики
Урок 4. Создание баннера туроператора
Цель: создать анимационный баннер 240 на 400 пикселей для туристического оператора с применением множества анимаций.
Задачи:
- научиться совмещать множество анимаций для одного элемента;
- научиться применять анимацию к псевдоклассу :hover.
В данном уроке мы научимся применять множественные анимации к одному объекту и создадим баннер для туроператора размером 240 на 400 пикселей. Итоговый результат вы можете видеть ниже.
Логотип для баннера, который расположен в левом верхнем углу, взят с сайта туроператора - tui.ru
Все изображения для выполнения работы вы можете взять в папке image.
Для того, чтобы создать рекламный блок, можно сначала реализовать html-код, разместить все элементы на свои места, а затем анимировать каждый из блоков. Именно так мы и поступим в данном уроке.
Задание №1
Создайте html-файл и напишите код из листинга на рисунке 1.
Рисунок 1
Результат можно увидеть на рисунке 2
Рисунок 2
Дальнейшия действия в лабораторной работе будут происходить в файле со стилями.
Задание №2. Опишем классы.
Для нашего контейнера, в котором будет находиться баннер зададим размер 240 на 400 пикселей. Цвет укажем - #ffdc52. Так же укажите рамку в 1 пиксель, это создаст немного контраста. Позиционирование в данном стиле будет - relative.
Рисунок 3
Результат можно увидеть на рисунке 4.
Рисунок 4
Для логотипа стили будут как на рисунке 5. Результат на рисунке 6.
Рисунок 5
Рисунок 6
Для блока со скидками код будет, как на рисунке 7, а результат на рисунке 8.
Рисунок 7
Рисунок 8
Допишем стили для остальных блоков (рисунок 9). Результат на рис. 10.
Рисунок 9
Рисунок 10
Задание №3. Анимация изображения
1. Зададим свойства блоку с изображением (блок с классом banner4image). Сделаем так, что бы наше изображение плавно выдвигалось снизу в верх. А так же сразу зададим данному элементу вторую анимацию, уже с другим направление. По результату картинка будет подниматься, при этом ее видимость будет повышаться и она будет поворачиваться в разные стороны на пару градусов.
2. Для первой анимации зададим имя - bannerforimage, длиться она будет три секунды и скорость направления ее будет равномерной.
3. Для второй анимации имя bannerforimages, длительностью так же три секунды, а вот скорость направления будет другой, зададим значение ease.
4. Зададим ключевые кадры для анимаций.
В первом случае будет только свойства в значениях 0% и 100%. Для начала анимации укажем свойство bottom: -180px, а для 100% - bottom: 0. Таким образом наша картинка будет появляться снизу вверх.
Для второй анимации укажем сразу 6 ключевых кадров - 0%, 80%, 90%, 95%, 97% и 100%. Ниже в таблице можно увидеть какие свойства находятся в ключевых кадрах.
Ключевой кадр | Свойство |
0% | transform: rotate(0deg); opacity: 0; |
80% | transform: rotate(10deg); |
90% | transform: rotate(-10deg); |
95% | transform: rotate(8deg); |
97% | transform: rotate(-5deg); |
100% | transform: rotate(0deg); opacity: 1; |
Стили для блока banner4image и двух анимаций на рисунке ниже. Результат на рисунке 12.
Рисунок 11
Рисунок 12
Задание №4. Анимация при наведении.
Анимируем блок с надписью «Хочу в отпуск». Анимация у нас будет при наведении, т.е указывать ее надо в свойстве с псевдоклассом :hover.
Зададим параметры анимации: Имя - hochuvotpusk, длительность - 1 секунда, скорость будет равномерная, анимация будет повторяться бесконечно от начала до конца и в обратную сторону.
В ключевых кадрах укажем то, как она будет изменяться. Сделаем так что бы при наведении, она увеличивалась и уменьшалась. Для этого необходимо указать параметр transform:scale(). Значение подберите сами.
Рисунок 13
Результат на рисунке ниже.
Рисунок 14
Задание №5. Зададим переход цвета надписи - скидка до 50%
Длительность и имя анимации придумаете сами. Для того что бы наш цвет менялся, укажем в начальном кадре первый параметр цвета, в нашем случае оранжевый, а в конечном кадре укажем белый цвет.
Рисунок 15
Задание №6.
Остальные трансформации и анимации с ключевыми кадрами попробуйте сделать самостоятельно, если у вас что-то не будет получаться, то загляните в листинг который можете найти ниже.
Итоговая таблица стилей
Рисунок 16
Контрольное задание.
Создать баннер c аналогичными трансформациями для своей фирмы.
Также Вы можете использовать для выбора контрольного задания следующие варианты.
Вариант №1. Баннер юридической фирмы.
Вариант №2. Баннер стоматологии.
Вариант №3. Баннер фирмы организующей праздники.
Вариант №4. Баннер распродажи новогодних игрушек.
Вариант №5. Баннер массажного салона.
Вариант №6. Баннер кафе.
Вариант №7. Баннер магазина одежды.
Вариант №8. Баннер школы.
Вариант №9. Баннер компьютерной фирмы.
Вариант №10. Баннер кондитерской.