Как добавить анимацию на SVG с CSS

Sep 13, 2025
Инструкции
Image: Web Designer
[Изображение: веб-дизайнер]

Когда дело доходит до анимирования с SVGS, одно основное отключение может быть идеей увязнуть в библиотеках JavaScript. Однако это не должно быть так. CSS может обрабатывать выбор отдельных путей в SVG для создания эффектов. Просто зная, что основы могут означать, что можно превратить плоские иконки в чем-то немного более впечатляюще. Поэтому возможно, пришло время пройти через фундаментальные этапы оптимизации и анимации SVG. При интегрировании в разные конструкции не требуется много времени для понимания того, что возможности бесконечны.

Для более вдохновения движения посмотрите на руководство Creative Bloq для Примеры анимации CSS и как их кодировать.

Сэкономьте 100 фунтов стерлингов с супер ранним птичьим билетом Генерировать CSS Однодневная веб-конференция, организованная Creative Bloq, веб-дизайнерским журналом и чистым журналом. Бронировать здесь Отказ

01. Создать и сохранить

Во-первых, создайте SVG для работы. Для этого учебника мы будем использовать простую графику, сделанную в Illustrator. При использовании Illustrator для экспорта SVG уменьшить размер артборда, чтобы соответствовать графике, затем нажмите «Сохранить как». Выберите SVG из раскрывающегося меню «Сохранить как тип типа», затем «SVG Code ...» на диалоге параметров SVG.

02. Оптимизировать для Интернета

SVG screenshot

Нажмите на значок в правом верхнем углу, чтобы увеличить изображение [Изображение: svgomg]

Вырезание ненужных тегов сделает изображение легче иметь дело с. Это можно сделать вручную, копируя код в свой любимый редактор и удаление пустых тегов и метаданных. В качестве альтернативы, фантастический ресурс под названием Svgomg сделает это автоматически. Вставьте код в область «Paste Markup» на интерфейсе Svgomg, а затем скопируйте изображение снова, используя кнопку в правом нижнем углу.

03. Настройте HTML-документ

Откройте свой редактор кода по выбору и установите пустой HTML-документ. Мы напишем CSS-анимацию в файл под названием main.css Так тоже создайте это тоже. Чтобы сохранить сосредоточенные вещи на анимации, мы вытащили в версии Bootstrap только в CSS-CSS.

04. Создайте макет

Давайте построим кости нашего макета и сделайте место для нашего SVG. Мы добавили заголовок и два столбца: один слева для некоторых текста, и один справа, который будет держать SVG, что мы будем анимировать. Чтобы оживить страницу, используйте второй, статический, SVG в качестве фона на теге тела.

05. Поместите SVG

Мы используем нашу анимацию, чтобы сделать введение в верхней части страницы более интересными. Вставьте оптимизированный код SVG во второй столбец на странице. При использовании Bootstrap, дайте SVG класс IMG-Fluid Чтобы убедиться, что это масштабирует на мобильных телефонах.

06. Добавить классы в SVG

Добавление классов на SVG позволяет CSS выбирать отдельные формы на изображении. Это означает, что вы можете анимировать различные формы изображения в разное время, создавая более сложный эффект.

 & lt; svg & gt;
& lt; G & GT;
& lt; rect Class = "Rettackbogground" ширина = "147.4107"
высота = "68,7917" x = "31.2946" y = "114.1042"
RX = "4.5882" ry = "3.9565" Fill = "# 2A7FFF" / & gt;
& lt; Класс PATH = "REPTTEXT" D = "..." Vector-Effect = "Non-Chance-Exchange - ширина хода =". 470476156 "font-size =" 12 "Fill =" # FFF "
Заполнение-правило = "Доброддовый" ход = "# FFF" HOT-Linecap = "Round" / & GT;
& lt; / g & gt;
& lt; / svg & gt; 

07. Первоначальные состояния

Выбор наших элементов SVG в CSS такой же, как любой другой элемент. Мы используем наши классы, чтобы выбрать эти элементы в SVG. Обе части наших SVG начнутся как скрыты, когда страница загружает, поэтому давайте использовать CSS, чтобы установить оба непрозрачности элемента 0. Отказ

 Path.rectText {
непрозрачность: 0;
}
rect.rectbackground {
непрозрачность: 0;
} 

08. Объявить анимацию

Нам нужно объявить имя и ключевые кадры для каждой анимации, чтобы CSS знал, что мы хотим сделать, когда просим его выполнить эффект. Я выбрал Текстин и прямо , как они описывают каждую анимацию. прямо будет простая двухшаговая анимация. Текстин будет иметь дополнительный средний шаг.

 @KeyFrames TextDraw {
0% {}
50% {}
100% {}
}
@keyframes rectfade {
из{}
к{}
} 

09. Назначить анимацию и свойства

SVG and coding

Нажмите на значок в правом верхнем углу, чтобы увеличить изображение [Изображение: Джозеф Форд]

Мы добавляем прямо анимация к тому Rettackbackground элемент и дайте его продолжительностью одной секунды. Ан легкость Кубический Безье используется, чтобы дать ему главное чувство. Мы добавляем вперед Таким образом, элемент сохраняет свойства последнего ключевого кадра, когда анимация заканчивается.

 rect.rectbackground {
непрозрачность: 0;
Анимация: Rectfade 1S Cubic-Bezier (0,645,
0,045, 0,355, 1) вперед;
} 

10. Прямоугольная анимация

SVG image

Нажмите на значок в правом верхнем углу, чтобы увеличить изображение [Изображение: Джозеф Форд]

Благодаря двум ключевым каскамам все, что нам нужно сделать для нашего прямоугольника, устанавливается набор атрибутов начала и окончания. Давайте начнем с 1% ширина и закончить на 100% дать «расширение к правильному эффекту». Мы также можем установить непрозрачность: 1. до последнего ключевого кадра, поэтому форма затаскивается одновременно.

 @keyFrames rectfade {
из {
Ширина: 1%;
}
к {
Ширина: 100%;
непрозрачность: 1;
}
} 

11. Текстовая анимация

Мы собираемся создать эффект линейного рисования на нашем тексте, затем используйте заполнение в исчезновение. Чтобы настроить текстовую анимацию, мы даем это Текстин с четырьмя второй продолжительностью. Кубический Безье был изменен на этом шаге, чтобы дать ему немного разные темпы движения.

 Path.rectText {
непрозрачность: 0;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
} 

12. Задержка начала

Наш текст должен работать так же, как прямоугольник завершил исчезновение. Поскольку прямоугольник имеет одну секунду продолжительностью, задерживая начало анимации текста к тому времени.

 Path.rectText {
непрозрачность: 0;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
Задержка анимации: 1s;
} 

13. Эмулируя рисунок линии

SVG animation

Нажмите на значок в правом верхнем углу, чтобы увеличить изображение [Изображение: Джозеф Форд]

Чтобы наша линию рисовать эффект, мы будем использовать ход-дашаррай и HIND-DASHOFTSET Параметры. Ваши ценности будут отличаться для моей, в зависимости от SVG, который вы используете. Чтобы найти свою ценность, используйте предпочтительные инструменты разработчика и увеличение ход-дашаррай из 0. пока вся форма не покрыта одним ударом.

 Path.rectText {
непрозрачность: 0;
Hatter-dasharay: 735;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
Задержка анимации: 1S;
} 

14. Первая линия рисунок ключевым кадром

Теперь у нас есть один очень большой ход, который охватывает весь текстовый путь, давайте компенсируем его по своей длине, чтобы эффективно отталкивать его. С помощью HIND-DASHOFTSET за то же значение, что и наше дашаррай должен сделать это. Давайте установим это в нашем первом ключевом кадре. Мы также сделаем форму заполнить прозрачную форму и установить ход белизну, если он еще не будет.

 0% {
Заполните: RGB (255, 255, 255, 0);
Ход: #fff;
HIND-DASHOFFSET: 800;
непрозрачность: 1;
} 

15. Нарисуйте линии

Наш средний ключ появляется в 40% через анимацию. Мы приносим HIND-DASHOFTSET Обратно до нуля, чтобы прибор охватывает весь путь. Мы можем повторно добавить прозрачную заливку на этом этапе, чтобы убедиться, что заполнение появляется только после завершения чертежа.

 40% {
HIND-DASHOFFSET: 0;
Заполните: RGB (255, 255, 255, 0,0);
} 

16. Заполните форму

Для последней части анимации мы заполним форму в белом. Все, что нам нужно сделать для последнего ключевого кадра, поднимает альфа-значение цвета заполнения. Это создает эффект заливки.

 100% {
Заполните: RGB (255, 255, 255, 1);
HIND-DASHOFFSET: 0;
непрозрачность: 1;
} 

generate conference

Эта статья была первоначально опубликована в Creative Web Design Magazine Веб-дизайнер Отказ Купить проблему 286. или же подписываться Отказ

Прочитайте больше:

  • Добавить фильтры SVG с CSS
  • Как проектировать с фигурами CSS: введение
  • Как кодировать умные текстовые эффекты с CSS

Инструкции - Самые популярные статьи

Как изменить шрифт в вашем Instagram Bio

Инструкции Sep 13, 2025

(Образ кредита: Getty Images) Обучение того, как изменить шрифт в вашем..


Как нарисовать лев

Инструкции Sep 13, 2025

Добро пожаловать в наше руководство о том, как нарисовать льва. Король джунглей, лев -..


Как рисовать красочное анимационное искусство в Photoshop

Инструкции Sep 13, 2025

Во время этого урока Photoshop я пойду на несколько ключевых концепций, кот..


Как структурировать средства массовой информации в Sass

Инструкции Sep 13, 2025

Практически каждый сайт сейчас построен, по крайней мере, с помощью от�..


Как визуализировать реалистичные прозрачные поверхности

Инструкции Sep 13, 2025

Создание прозрачного материала, такого как стекло, кажется простым - п�..


Заточите свои навыки эскизы

Инструкции Sep 13, 2025

Эскиз Это простой, но мощный инструмент для тех, кто участвует в создании цифровых продуктов. Ручк..


Как разработать промо для воображаемой марки

Инструкции Sep 13, 2025

При проектировании бренда, будь то установленный или запуск, который вы берете творческий провод, согла�..


Начните с прототипирования в Adobe XD

Инструкции Sep 13, 2025

Поскольку спрос на разработку UX Design продолжает расти, дизайнеры ищут простые в использовании инструмен�..


Категории