{CSS} код для вставки:
Готовые градиенты:
Подборка градиентов
CSS-градиенты создаются с помощью свойства background и функций linear-gradient() , radial-gradient() или conic-gradient() . Достаточно указать направление и цветовые точки — браузер сам построит плавный переход. Ниже — подборка красивых градиентов: кликните по кнопке копирования, чтобы получить CSS-код и сразу использовать его в своём проекте.
90°
135°
135°
135°
135°
180°
225°
135°
90°
180°
135°
90°
0°
180°
90°
45°
90°
135°
180°
90°
45°
135°
135°
90°
135°
45°
135°
90°
225°
180°
90°
180°
135°
135°
90°
135°
45°
90°
180°
315°
90°
135°
0°
135°
Вопросы и ответы
Почему переход к transparent в градиенте выглядит серым или мутным?
Ключевое слово transparent — это сокращение для rgba(0, 0, 0, 0): цвет чёрный, но полностью прозрачный. Когда браузер интерполирует от, скажем, rgba(127, 127, 213, 1) к rgba(0, 0, 0, 0), он «подмешивает» чёрный канал, и переход выглядит серым или грязным. Решение: вместо transparent явно пишите тот же цвет с нулевой прозрачностью — rgba(127, 127, 213, 0). Тогда интерполяция идёт только по альфа-каналу, без изменения оттенка.
Можно ли анимировать цвета градиента через CSS transition?
Напрямую — нет. Браузер не умеет интерполировать значения внутри функций linear-gradient() или radial-gradient(), поэтому transition: background 0.3s на элементе с градиентным фоном не даёт плавного эффекта. Стандартный обходной путь — наложить два псевдоэлемента (::before / ::after) с разными градиентами и анимировать opacity между ними через transition. Альтернатива — трюк с background-size и background-position, который описан в статье выше.
Как нанести градиент на рамку (border) элемента?
Используйте свойство border-image: задайте border-image: linear-gradient(135deg, rgb(127, 127, 213), rgb(145, 234, 228)) 1 и обычный border: 2px solid transparent. Рамка получит градиентную заливку. Важный нюанс: border-image несовместимо с border-radius — при скруглённых углах рамка обрежется прямоугольником. Обходное решение — обернуть элемент в контейнер с градиентным фоном и padding вместо border, а внутренний блок закрасить однотонным фоном.
В чём разница между background и background-image при задании градиента?
Технически gradient() — это значение для свойства background-image, и оба варианта дают одинаковый визуальный результат. Разница в поведении шорткода: background сбрасывает все связанные подсвойства (background-color, background-repeat, background-position и др.) к значениям по умолчанию, если они не указаны явно. Это нередко приводит к неожиданному исчезновению фонового цвета или смещению изображения. Если градиент используется вместе с другими фоновыми свойствами, безопаснее писать background-image для градиента и задавать остальные свойства отдельно.
Нужны ли вендорные префиксы для CSS-градиентов сегодня?
Для подавляющего большинства проектов — нет. Все современные браузеры (Chrome 26+, Firefox 16+, Safari 7+, Edge) поддерживают linear-gradient(), radial-gradient() и conic-gradient() без каких-либо префиксов. Старый префикс -webkit-linear-gradient имел смысл до 2013 года. Если ваш проект не обязан поддерживать браузеры десятилетней давности, смело пишите стандартный синтаксис — именно он используется во всех примерах этой статьи.