Когда дело доходит до анимирования с SVGS, одно основное отключение может быть идеей увязнуть в библиотеках JavaScript. Однако это не должно быть так. CSS может обрабатывать выбор отдельных путей в SVG для создания эффектов. Просто зная, что основы могут означать, что можно превратить плоские иконки в чем-то немного более впечатляюще. Поэтому возможно, пришло время пройти через фундаментальные этапы оптимизации и анимации SVG. При интегрировании в разные конструкции не требуется много времени для понимания того, что возможности бесконечны.
Для более вдохновения движения посмотрите на руководство Creative Bloq для Примеры анимации CSS и как их кодировать.
Сэкономьте 100 фунтов стерлингов с супер ранним птичьим билетом Генерировать CSS Однодневная веб-конференция, организованная Creative Bloq, веб-дизайнерским журналом и чистым журналом. Бронировать здесь Отказ
Во-первых, создайте SVG для работы. Для этого учебника мы будем использовать простую графику, сделанную в Illustrator. При использовании Illustrator для экспорта SVG уменьшить размер артборда, чтобы соответствовать графике, затем нажмите «Сохранить как». Выберите SVG из раскрывающегося меню «Сохранить как тип типа», затем «SVG Code ...» на диалоге параметров SVG.
Вырезание ненужных тегов сделает изображение легче иметь дело с. Это можно сделать вручную, копируя код в свой любимый редактор и удаление пустых тегов и метаданных. В качестве альтернативы, фантастический ресурс под названием Svgomg сделает это автоматически. Вставьте код в область «Paste Markup» на интерфейсе Svgomg, а затем скопируйте изображение снова, используя кнопку в правом нижнем углу.
Откройте свой редактор кода по выбору и установите пустой HTML-документ. Мы напишем CSS-анимацию в файл под названием main.css Так тоже создайте это тоже. Чтобы сохранить сосредоточенные вещи на анимации, мы вытащили в версии Bootstrap только в CSS-CSS.
Давайте построим кости нашего макета и сделайте место для нашего SVG. Мы добавили заголовок и два столбца: один слева для некоторых текста, и один справа, который будет держать SVG, что мы будем анимировать. Чтобы оживить страницу, используйте второй, статический, SVG в качестве фона на теге тела.
Мы используем нашу анимацию, чтобы сделать введение в верхней части страницы более интересными. Вставьте оптимизированный код SVG во второй столбец на странице. При использовании Bootstrap, дайте SVG класс IMG-Fluid Чтобы убедиться, что это масштабирует на мобильных телефонах.
Добавление классов на 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;
Выбор наших элементов SVG в CSS такой же, как любой другой элемент. Мы используем наши классы, чтобы выбрать эти элементы в SVG. Обе части наших SVG начнутся как скрыты, когда страница загружает, поэтому давайте использовать CSS, чтобы установить оба непрозрачности элемента 0. Отказ
Path.rectText {
непрозрачность: 0;
}
rect.rectbackground {
непрозрачность: 0;
}
Нам нужно объявить имя и ключевые кадры для каждой анимации, чтобы CSS знал, что мы хотим сделать, когда просим его выполнить эффект. Я выбрал Текстин и прямо , как они описывают каждую анимацию. прямо будет простая двухшаговая анимация. Текстин будет иметь дополнительный средний шаг.
@KeyFrames TextDraw {
0% {}
50% {}
100% {}
}
@keyframes rectfade {
из{}
к{}
}
Мы добавляем прямо анимация к тому Rettackbackground элемент и дайте его продолжительностью одной секунды. Ан легкость Кубический Безье используется, чтобы дать ему главное чувство. Мы добавляем вперед Таким образом, элемент сохраняет свойства последнего ключевого кадра, когда анимация заканчивается.
rect.rectbackground {
непрозрачность: 0;
Анимация: Rectfade 1S Cubic-Bezier (0,645,
0,045, 0,355, 1) вперед;
}
Благодаря двум ключевым каскамам все, что нам нужно сделать для нашего прямоугольника, устанавливается набор атрибутов начала и окончания. Давайте начнем с 1% ширина и закончить на 100% дать «расширение к правильному эффекту». Мы также можем установить непрозрачность: 1. до последнего ключевого кадра, поэтому форма затаскивается одновременно.
@keyFrames rectfade {
из {
Ширина: 1%;
}
к {
Ширина: 100%;
непрозрачность: 1;
}
}
Мы собираемся создать эффект линейного рисования на нашем тексте, затем используйте заполнение в исчезновение. Чтобы настроить текстовую анимацию, мы даем это Текстин с четырьмя второй продолжительностью. Кубический Безье был изменен на этом шаге, чтобы дать ему немного разные темпы движения.
Path.rectText {
непрозрачность: 0;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
}
Наш текст должен работать так же, как прямоугольник завершил исчезновение. Поскольку прямоугольник имеет одну секунду продолжительностью, задерживая начало анимации текста к тому времени.
Path.rectText {
непрозрачность: 0;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
Задержка анимации: 1s;
}
Чтобы наша линию рисовать эффект, мы будем использовать ход-дашаррай и HIND-DASHOFTSET Параметры. Ваши ценности будут отличаться для моей, в зависимости от SVG, который вы используете. Чтобы найти свою ценность, используйте предпочтительные инструменты разработчика и увеличение ход-дашаррай из 0. пока вся форма не покрыта одним ударом.
Path.rectText {
непрозрачность: 0;
Hatter-dasharay: 735;
Анимация: TextDraw 4s
Cubic-Bezier (0.56, -0,04, 0,32, 0,7) вперед;
Задержка анимации: 1S;
}
Теперь у нас есть один очень большой ход, который охватывает весь текстовый путь, давайте компенсируем его по своей длине, чтобы эффективно отталкивать его. С помощью HIND-DASHOFTSET за то же значение, что и наше дашаррай должен сделать это. Давайте установим это в нашем первом ключевом кадре. Мы также сделаем форму заполнить прозрачную форму и установить ход белизну, если он еще не будет.
0% {
Заполните: RGB (255, 255, 255, 0);
Ход: #fff;
HIND-DASHOFFSET: 800;
непрозрачность: 1;
}
Наш средний ключ появляется в 40% через анимацию. Мы приносим HIND-DASHOFTSET Обратно до нуля, чтобы прибор охватывает весь путь. Мы можем повторно добавить прозрачную заливку на этом этапе, чтобы убедиться, что заполнение появляется только после завершения чертежа.
40% {
HIND-DASHOFFSET: 0;
Заполните: RGB (255, 255, 255, 0,0);
}
Для последней части анимации мы заполним форму в белом. Все, что нам нужно сделать для последнего ключевого кадра, поднимает альфа-значение цвета заполнения. Это создает эффект заливки.
100% {
Заполните: RGB (255, 255, 255, 1);
HIND-DASHOFFSET: 0;
непрозрачность: 1;
}
Эта статья была первоначально опубликована в Creative Web Design Magazine Веб-дизайнер Отказ Купить проблему 286. или же подписываться Отказ
Прочитайте больше:
(Образ кредита: Getty Images) Обучение того, как изменить шрифт в вашем..
Добро пожаловать в наше руководство о том, как нарисовать льва. Король джунглей, лев -..
Во время этого урока Photoshop я пойду на несколько ключевых концепций, кот..
Практически каждый сайт сейчас построен, по крайней мере, с помощью от�..
Создание прозрачного материала, такого как стекло, кажется простым - п�..
Эскиз Это простой, но мощный инструмент для тех, кто участвует в создании цифровых продуктов. Ручк..
При проектировании бренда, будь то установленный или запуск, который вы берете творческий провод, согла�..
Поскольку спрос на разработку UX Design продолжает расти, дизайнеры ищут простые в использовании инструмен�..