Простые CSS анимации, которые оживят ваш сайт

Иногда даже одно лёгкое движение может сделать сайт запоминающимся. Не нужно быть мастером фронтенда, чтобы добавить немного магии в интерфейс — иногда достаточно пары строк CSS. Простые анимации делают сайт динамичным, визуально приятным и интуитивно понятным: кнопки становятся отзывчивыми, элементы появляются с грацией, а страницы начинают «дышать».

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

Основы CSS-анимации

CSS-анимации строятся на нескольких ключевых возможностях языка, которые позволяют делать элементы интерактивными и живыми без использования JavaScript. Вот основные из них:

Псевдокласс :hover

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

Свойство transition

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

Вместе с :hover это даёт простой способ оживить интерфейс — всё, что вам нужно, это начальное и конечное состояние, и CSS сам сделает остальное.

Свойство animation и @keyframes

Если вам нужно более сложное поведение — например, чтобы элемент «подпрыгивал», пульсировал или вращался — на помощь приходит @keyframes и свойство animation. С их помощью можно описать последовательность кадров анимации и применить её к элементу.

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

CSS анимации

Теперь, когда мы прошли небольшой вводный курс по анимации, займемся наконец-то делом. Для удобства я разбил анимации на группы.

Наведение и клики

Анимации при загрузке/появлении

Декоративные и attention-grabbing

Эффекты для текста

Мало букафф? Читайте есчо !

Разрыв строки во flex

Март 6, 2024 г.

В общем случае, это может быть и "разрыв столбца", зависит от выбранного направления заполнения flex контейнера (задаётся свойством flex-direction). Суть проблемы в том, что иногда требуется прекратить заполнение вдоль выбранного направления и начать ...

Читать

Единицы размеров в CSS, отличия между REM, EM, PX и т.п.

Июль 15, 2025 г.

В CSS размеры можно задавать с помощью разных единиц измерения: rem, em, px, % и другие. Разберём ключевые различия между rem, em и прочими. EM - размер относительно размера шрифта родителя [crayon-6a15aeb3b928a807485321/] 2em внутри .child ...

Читать

И снова переносы в CSS

Ноябрь 30, 2021 г.

Да, вновь тема переносов, т.к. я уже писал небольшую статью, но еще раз возвращаюсь к данной теме с некоторыми новыми подробностями. Итак - разрыв слова, перенос текста на новую строку - рассмотрим, какие директивы даёт нам CSS для управления поведением ...

Читать

100% высоты для дочернего flex контейнера

Сентябрь 10, 2024 г.

Flex опирается на другие принципы нежели блочные контейнеры, и иной раз не понятно какими свойствами управляется дочерний контейнер во flex родителе. Рассмотрим пример, когда у нас есть flex контейнер с двумя дочерними элементами. [crayon-6a15aeb3b96d6774805763/] ...

Читать
 

Комментарии к «Простые CSS анимации, которые оживят ваш сайт»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: