Примеры animation css: 10 Примеров Анимаций созданных только при помощи CSS

Содержание

17 крутых анимаций, созданных на чистом CSS

0 ∞

Если вы хотите впечатлить посетителей своего сайта, используйте CSS-анимацию! Сначала это может показаться простым, но использование подобной анимации может повлиять на восприятие вашего сайта. Анимация может добавить уровень интерактивности, вызывающий интерес. Она также позволяет добавить индивидуальности вашему интернет-проекту.

Итак, если вы не знаете, как начать работу с CSS-анимацией или где ее найти, чтобы использовать на своем сайте, мы вам поможем. Приведенный ниже список, состоящий из 17 вариантов, как минимум, должен вас заинтересовать.

  • CSS-анимация «Облачная спираль» (Cloud Spiral)
  • Слайдер на чистом CSS
  • Звездный параллакс фон в CSS
  • Минималистичный слайдер с чистым CSS
  • Анимация циферблата часов на чистом CSS
  • CSS анимация в плоском дизайне (Material)
  • 3D-сфера на чистом CSS
  • Анимация границ на чистом CSS без SVG
  • Mr. JeellyFish — чистая CSS-анимация
  • Анимированная кнопка почты на CSS
  • Подводная анимация на чистом CSS
  • Анимация куб-тянучка
  • Мерцающий загрузчик
  • Демо анимации на чистом CSS
  • Цветовая палитра с анимацией на чистом CSS
  • Чат бот
  • Летающий робот
  • Насладитесь этими анимациями на чистом CSS

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

А еще есть анимация слайдера. Используйте ее, чтобы подогреть интерес к содержанию вашего сайта. Ее легко настроить, и она добавляет интерактивности, которой так жаждут пользователи.

Этот прекрасный звездный фон использует эффект параллакса, чтобы создать заманчивую темную прокрутку.

Вот еще один вариант слайдера. На этот раз у него минималистичный дизайн, но он хорошо работает для автоматического отображения фотографий.

Если вам нужно как-то изобразить течение времени на вашем сайте, то эта анимация часов должна вам подойти.

Если вам нужно продемонстрировать, как выглядит плоский (material) дизайн, то эта быстрая небольшая анимация поможет вам!

На эту CSS-анимацию можно смотреть весь день! Она демонстрирует трехмерную сферу, которая постоянно меняет форму и цвет.

Вот еще один простой вариант исполнения рамки блока на чистом CSS, которая изменяется при наведении курсора.

Непосредственность может стать отличным дополнением к вашему присутствию в Интернете. И «мистер Медуза» определенно тому пример. Посмотрите, как он движется по экрану.

Позвольте посетителям сайта отправить вам электронное письмо гораздо более увлекательным способом с помощью этой анимацией кнопки электронной почты, а не с помощью клика по ссылке.

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

Желтый куб подпрыгивает и прижимается к краю коробки, сжимается и растягивается, прежде чем сменить направление.

Еще один прелоадер, на котором колесо и точка гоняются друг за другом в поле зрения.

При наведении курсора плитки разворачиваются, чтобы отобразить контрастный цвет. Из множества квадратиков образуется сфера.

Если вы предлагаете услуги в сфере дизайна или искусства, эта цветовая палитра с анимацией подойдет идеально.

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

Хотелось бы знать, какой сайт не способен украсить летающий робот? Этот маленький забавный парень летает по экрану на летающей тарелке, затем останавливается, появляется в поле зрения пользователя и потом снова исчезает.

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

Приятного просмотра и творчества!

Вадим Дворниковавтор-переводчик статьи «17 Cool Pure CSS Animations»

Пожалуйста, оставляйте свои отзывы по текущей теме статьи. За комментарии, отклики, дизлайки, подписки, лайки огромное вам спасибо!

Анимация сайта при помощи CSS

Оглавление

  • Свойство animation-delay
  • Свойство animation-iteration-count

Не пропусти свежие посты, подпишись:

Сегодня всё большее число сайтов использует css анимацию для отрисовки различных элементов, будь то кнопки, формы, слайдеры и т.п. это значительно улучшает впечатление пользователя от работы с сайтом, к тому же анимация делает сайт «живым» и позволяет проще ориентироваться, т.к. посетитель сразу видит активные элементы (меню, кнопки реагирующие на наведение мышки) и пассивные (текст).

Сразу хочу сказать, что сделать анимированные элементы на сайте при помощи CSS, на самом деле не сложно. Основная суть в том, что вы создаёте 2 класса описывающих начальное состояние элемента и конечное (внешний вид) плюс указываете правила по которым это состояние должно меняться и время за которое это должно произойти и всё.

Основные свойства CSS анимации

Давайте разберём при помощи каких свойств создаётся анимация:

  • animation-name — уникальное имя анимации, по сути оно описывает и позволяет сразу применить набор правил анимации к элементу
  • animation-duration — продолжительность анимации в секундах.
  • animation-timing-function — кривая изменения скорости анимации. Это математическая функция описывает скорость анимации в течении заданного времени продолжительности анимации (duration) Может принимать значения: linear | ease | ease-in | ease-out | cubic-bezier(n,n,n,n).
  • animation-delay
     — задержка в секундах перед началом анимации.
  • animation-iteration-count — количество повторов анимации. Целое число или infinite чтобы анимация выполнялась бесконечно.

Давайте более детально разберём некоторые из вышеперечисленных свойств.

Свойство animation-name

Данное свойство работает в связке с такой штукой как @keyframes. Правило описанное в @keyframes задаёт ключевые кадры анимации элемента, другими словами оно описывает значения принимаемые css свойствами элемента (например степень прозрачности, размер, цвет) в заданный момент времени.



@keyframes move {
 from { left: 0; }
 to { left: 300px; }
}


В данном примере мы создали @keyframe с именем move (движение), который затем укажем в параметре animation-name.

Данное правило сообщает элементу, что тот должен изменять значение свойства left c 0 до 300 пикселей за заданный промежуток времени. Кстати вместо ключевых слов from и to в описании ключевых кадров, можно было использовать 0% и 100% соответственно.

Свойство animation-duration

Это свойство определяет длительность анимации в секундах s или в миллисекундах ms. По умолчанию стоит значение 0s это говорит браузеру, что анимация не должна выполняться. Отрицательные значения являются недействительными. Пример:


animation-duration: 6s;
animation-duration: 120ms;


Свойство animation-timing-function

Данное свойство определяет то, как будет выполняться анимация, а точнее кривую скорости которая представляет из себя математическую функцию «кривую Безье».

У этого свойства есть набор предопределённых значений, а так же значения в виде функции с произвольным набором аргументов.

Давайте рассмотрим допустимые значения:

  • ease — анимация начинается медленно, потом ускоряется и к концу снова замедляется.
  • linear — линейная функция, скорость анимации не меняется в течении её выполнения
  • ease-in — анимация с медленным стартом
  • ease-out — анимация с медленным окончанием
  • cubic-bezier() — кубическая функция Безье, она принимает 4 числовых значения от 0 до 1, по сути это 2 пары координат x, y определяющие точки начала и конца кривой Безье. Например cubic-bezier(0.25,0.1,0.25,1) соответствует кривой описанной значением ease. В конструкторе кубической функции Безье вы сможете наглядно подобрать необходимые для вашей анимации значения.
  • steps() — указывает пошаговую функцию с двумя параметрами. Первый задаёт число интервалов функции (целое число больше нуля), второй принимает значения start или end и указывает точку в которой изменение значений происходит в пределах интервала. Второй параметр — необязательный, по умолчанию end.
  • step-start — предустановленный вариант функции steps() свойство сразу принимает конечное значение в ключевом кадре @keyframe, эквивалентно steps(1, start).
  • step-end — предустановленный вариант функции steps(), свойство принимает конечное значение в конце шага, эквивалентно 
    steps(1, end)
    .

Рассмотрим пример работы анимации с указанными значениями animation-timing-function.

Свойство animation-delay

Тут всё просто, свойство задаёт задержку в миллисекундах перед началом анимации.


animation-delay: 3s;
animation-delay: 0s;
animation-delay: -1500ms;


Свойство animation-iteration-count

Данное свойство задаёт количество повторений анимации. По умолчанию анимация повторяется один раз, свойство может принимать в качестве значения целое число или infinite если нужно зациклить анимацию.


/* Анимация зациклена */
animation-iteration-count: infinite;

/* Анимация выполнится 3 раза */
animation-iteration-count: 3;


Готовые библиотеки для CSS анимации

В большинстве случаев вам как верстальщику не придётся с нуля прописывать все параметры анимации чтобы добиться желательного эффекта. В сети существует множество готовых библиотек для реализации различных CSS эффектов анимации. Одна из популярных библиотек, которой я так же неоднократно пользовался, называется Animate css.

Работает она наподобие Bootstrap, чтобы получить нужное поведение элемента вы просто добавляете требуемые css класс описывающий анимацию.

Например:


.my-element {
  display: inline-block;
  margin: 0 0.5rem;

  animation: bounce; /* referring directly to the animation's @keyframe declaration */
  animation-duration: 2s; /* don't forget to set a duration! */
}


Здесь параметр animation (эквивалент animation-name) принимает имя кейфрейма в котором описана анимация из библиотеки Animate CSS.

Использование таких библиотек значительно ускоряет процесс внедрения анимационных эффектов на сайт.

Конструкторы CSS анимации

Помимо готовых библиотек, в интернете вы можете найти множество конструкторов, позволяющих наглядно подобрать эффект анимации для вашего элемента. Один из удобных конструкторов Animasta. В целом общий совет будет такой, прежде чем выдумывать свой эффект, поищите готовое решение в сети или конструктор. Зачастую эти решения будут реализованы лучше и чище, чем вы (особенно в начале изучения css) можете сделать самостоятельно.

Позже я рассмотрю несколько классных эффектов которые универсально подходят практически к любому сайту.

Краткое введение с примерами

CSS означает каскадные таблицы стилей. Это язык таблиц стилей, который используется для описания внешнего вида и форматирования документа, написанного на языке разметки. Он предоставляет дополнительную функцию HTML, что делает его очень полезным.

Обычно он используется с HTML для изменения стиля веб-страниц и пользовательских интерфейсов. В этой статье мы попытаемся понять важную часть CSS-анимации — ключевые кадры.

Что такое ключевые кадры CSS?

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

Синтаксис:

@keyframes [имя]{

      от{

        [стили];

      }

      до{

        [стили];

      }

  • Значение [имя] определяет имя анимации. Вы можете назвать это как угодно.
  • Значение [styles] определяет свойства стиля CSS.

Имейте в виду, что на них нет селекторов. Они находятся в корне страницы CSS.

Функции синхронизации ключевых кадров

Функция синхронизации используется для управления скоростью анимации. Мы можем использовать следующие значения для лучшего понимания:

  • Линейный: Это означает, что переход будет постоянным от начала до конца.
  • Легкость: это означает, что анимация будет начинаться медленно, а затем через некоторое время скорость будет увеличиваться, а перед концом скорость снова замедлится.
  • Ease-in: Очень похоже на Ease-in, но анимация заканчивается быстро.
  • Легкость: Очень похоже на легкость. Разница лишь в том, что он начинается быстро.

Пример ключевых кадров CSS 1

Давайте рассмотрим простой пример, чтобы понять, как работают ключевые кадры.

Здесь мы создали поле высотой и шириной 200 пикселей. Цвет коробки красный. Создается ключевой кадр с именем «myframes», который увеличивает высоту блока до 500 пикселей.

Имя анимации указывает имя анимации, определенной @keyframes, которая должна применяться к выбранному элементу.

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

Функция синхронизации определяет, как анимация будет развиваться в течение каждого цикла, т. е. функции плавности.

Количество итераций указывает, сколько раз цикл анимации должен воспроизводиться перед остановкой.

Пример ключевых кадров CSS 2

В этом примере. мы увидим еще один простой способ записи ключевых кадров с несколькими объявлениями стиля.

Пример ключевых кадров CSS 3

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

Объединить преобразование и ключевые кадры

В этом примере мы объединили ключевые кадры со свойством преобразования, чтобы создать вращающуюся рамку.

Заключение

На этом мы подошли к концу статьи о ключевых кадрах CSS. Мы обсудили несколько примеров и свойств анимации, чтобы понять работу ключевых кадров. Работая с различными ключевыми кадрами и свойствами анимации, вы сможете лучше понять концепции. Свяжитесь с экспертами, записавшись на программу Simplilearn для аспирантов по курсу Full Stack Web Development.

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

Анимация CSS3

« Предыдущая

Следующая глава »


Анимация CSS3

Анимация CSS3 позволяет анимировать большинство элементов HTML без использования JavaScript или Flash!

CSS3
Анимация


Поддержка анимации браузером

Числа в таблице указывают первую версию браузера, которая полностью поддерживает это свойство.

Числа, за которыми следует -webkit-, -moz- или -o-, указывают на первую версию, которая работала с префиксом.

Собственность
@ключевые кадры 43,0
4,0 -вебкит-
12,0 10,0 16,0
5,0 -мунц-
9. 0
4.0 -вебкит-
30,0
15,0 -webkit-
12,0 -o-
анимация 43,0
4,0 -вебкит-
12,0 10,0 16,0
5,0 -мунц-
9.0
4.0 -вебкит-
30,0
15,0 -webkit-
12,0 -o-


Что такое анимация CSS3?

Анимация позволяет элементу постепенно переходить из одного стиля в другой.

Вы можете изменять столько свойств CSS, сколько хотите, сколько угодно раз.

Чтобы использовать анимацию CSS3, вы должны сначала указать несколько ключевых кадров для анимация.

Ключевые кадры содержат стили, которые элемент будет иметь в определенное время.


Правило @keyframes

При указании стилей CSS внутри @keyframes правило, анимация будет постепенно меняться от текущего стиля к новому стилю в определенное время.

Чтобы заставить анимацию работать, вы должны привязать анимацию к элементу.

В следующем примере анимация «пример» привязывается к элементу

. Анимация будет длиться 4 секунды, и она будет постепенно менять background-color элемента
с «красного» на «желтый»:

Пример

/* Код анимации */
пример @keyframes {
от {цвет фона: красный;}
на {цвет фона: желтый;}
}

/* Элемент, к которому применяется анимация */
div {
    ширина: 100 пикселей;
    высота: 100 пикселей;
цвет фона: красный;
имя-анимации: пример;
    длительность анимации: 4 с;
}

Попробуйте сами »

Примечание: Если свойство animation-duration не указано, анимация не будет иметь никакого эффекта, т.к. значение по умолчанию – 0. 

В приведенном выше примере мы указали, когда стиль изменится, используя ключевые слова «от» и «до» (что соответствует 0% (начало) и 100% (завершение)).

Также можно использовать проценты. Используя проценты, вы можете добавить столько стиль меняется по вашему желанию.

В следующем примере будет изменен фоновый цвет

элемент, когда анимация завершена на 25 %, 50 % и снова, когда анимация завершена на 100 %:

Пример

/* Код анимации */
пример @keyframes {
0%   {цвет фона: красный;}
25% {фоновый цвет: желтый;}
50% {фоновый цвет: синий;}
100% {цвет фона: зеленый;}
}

/* Элемент, к которому применяется анимация */
div {
ширина: 100 пикселей;
    высота: 100 пикселей;
цвет фона: красный;
    имя-анимации: пример;
продолжительность анимации: 4 с;
}

Попробуйте сами »

В следующем примере будет изменен цвет фона и положение

элемент, когда анимация завершена на 25 %, 50 % и еще раз, когда анимация завершена на 100 %:

Пример

/* Код анимации */
пример @keyframes {
0%   {цвет фона: красный; слева: 0px; верх:0px;}
25 % {цвет фона: желтый; слева: 200 пикселей; верх:0px;}
50 % {фоновый цвет: синий; слева: 200 пикселей; верх: 200 пикселей;}
75 % {фоновый цвет: зеленый; слева: 0px; верх: 200 пикселей;}
100% {цвет фона: красный; слева: 0px; верх:0px;}
}

/* Элемент, к которому применяется анимация */
div {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
}

Попробуйте сами »


Задержка анимации

Свойство animation-delay задает задержку начала анимации. анимация.

В следующем примере задержка перед запуском анимации составляет 2 секунды:

Пример

раздел {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
    анимация-задержка: 2 с;
}

Попробуйте сами »


Установите, сколько раз должна запускаться анимация

Свойство animation-iteration-count указывает, сколько раз должна запускаться анимация.

В следующем примере анимация будет запущена 3 раза, прежде чем она остановится:

Пример

раздел {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
    число итераций анимации: 3;
}

Попробуйте сами »

В следующем примере для создания анимации используется значение «бесконечность». продолжаться вечно:

Пример

раздел {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
    число-итераций-анимации: бесконечный;
}

Попробуйте сами »


Запуск анимации в обратном направлении или альтернативные циклы

Свойство animation-direction используется для запуска анимации в обратном направлении или чередующихся циклов.

Следующий пример запустит анимацию в обратном направлении:

Пример

раздел {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
    число итераций анимации: 3;
    анимация-направление: обеспечить регресс;
}

Попробуйте сами »

В следующем примере используется значение «альтернативный», чтобы сделать анимацию сначала бежать вперед, потом назад, потом вперед:

Пример

раздел {
ширина: 100 пикселей;
    высота: 100 пикселей;
положение: родственник;
    background-color: красный;
имя-анимации: пример;
продолжительность анимации: 4 с;
    число итераций анимации: 3;
    анимация-направление: чередовать;
}

Попробуйте сами »


Задайте кривую скорости анимации

Свойство animation-timing-function определяет кривую скорости анимации анимация.

Свойство animation-timing-function может принимать следующие значения:

  • легкость — определяет анимацию с медленным началом, затем быстрым, затем медленным завершением (по умолчанию)
  • linear — задает анимацию с одинаковой скоростью от начала до конца
  • easy-in — задает анимацию с медленным стартом
  • easy-out — определяет анимацию с медленным завершением
  • easy-in-out — определяет анимацию с медленным началом и концом
  • cube-bezier(n,n,n,n) — позволяет определить собственные значения в функции кубического Безье

В следующем примере показаны некоторые из различных кривых скорости, которые можно использовать:

Пример

#div1 {функция синхронизации анимации: линейная;}
#div2 {функция синхронизации анимации: легкость;}
#div3 {функция синхронизации анимации: облегчение;}
#div4 {анимация-тайминг-функция: ослабление;}
#div5 {анимация-время-функция: легкость-в-выход;}

Попробуйте сами »


Сокращенное свойство анимации

В приведенном ниже примере используются шесть свойств анимации:

Пример

див {
имя-анимации: пример;
продолжительность анимации: 5 с;
функция синхронизации анимации: линейная;
анимация-задержка: 2 с;
количество итераций анимации: бесконечно;
направление анимации: альтернативное;
}

Попробуйте сами »

Тот же эффект анимации, что и выше, может быть достигнут с помощью сокращения анимация свойство:

Пример

див {
анимация: пример 5s линейный 2s бесконечный чередующийся;
}

Попробуйте сами »


Проверьте себя с помощью упражнений!

Упражнение 1 » Упражнение 2 » Упражнение 3 » Упражнение 4 » Упражнение 5 » Упражнение 6 »


Свойства анимации CSS3

В следующей таблице перечислены правило @keyframes и все свойства анимации:

Свойство Описание
@ключевые кадры Указывает код анимации
анимация Сокращенное свойство для установки всех свойств анимации
анимация-задержка Указывает задержку для запуска анимации
анимация-направление Указывает, должна ли анимация воспроизводиться в обратном направлении или альтернативные циклы
продолжительность анимации Указывает, сколько секунд или миллисекунд занимает анимация.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *