Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Функции в CSS и анимируемые свойства.docx
Скачиваний:
2
Добавлен:
01.07.2025
Размер:
1.45 Mб
Скачать

Примечание

Chrome до версии 26, Safari до версии 6.1 и Android до версии 4.4 поддерживают -webkit-linear-gradient().

Opera до версии 12.10 поддерживает -o-linear-gradient().

Firefox до версии 16 поддерживает -moz-linear-gradient().

Все свойства с префиксами не используют ключевое слово to при задании направления градиента.

opacity()

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

Синтаксис

filter: opacity(<значение>);

Значения

Значение 100% или 1 оставляет изображение исходным. Значение 0% или 0 делает изображение полностью прозрачным. Любые значения от 0% до 100% или от 0 до 1 задают степень прозрачности картинки.

Отрицательное значение не допускается. Пустое значение воспринимается как 1.

<style>

.opacity {

-webkit-filter: opacity(0.5);

filter: opacity(0.5);

transition: 1s;

}

.opacity:hover {

-webkit-filter: opacity(1);

filter: opacity(1);

}

Результат данного примера показан на рис. 1. Фотографиям изначально задана прозрачность 50%, но при наведении на них курсора мыши, они плавно становятся непрозрачными.

radial-gradient()

Функция radial-gradient() добавляет радиальный градиент к фону элемента. Радиальные по своему принципу похожи на линейные градиенты, но один цвет переходит в другой не вдоль прямой линии, а словно круги по воде вокруг точки. На рис. 1 представлено для сравнения одновременно два разных градиента: радиальный (рис. а) и линейный (рис. б).

а

б

Рис. Радиальный и линейный градиент

Радиальный градиент создаётся с помощью свойства background или background-image.

Синтаксис

background-image: radial-gradient([ circle || <радиус> ] [ at <позиция> ]? ,

| [ ellipse || [<радиус> | <проценты> ]{2}] [ at <позиция> ]? ,

| [ [ circle | ellipse ] || <размер> ] [ at <позиция> ]? ,

| at <позиция> ,

<цвет> [ , <цвет> ]*)

Значения:

Circle Радиальный градиент круглой формы.

Ellipse Создаёт градиент эллиптической формы. Эта форма установлена по умолчанию.

<радиус> Радиус градиента в доступных для CSS единицах. Одно значение указывает радиус круга, два значения — радиус эллипса по оси x и его же радиус по оси y. Если радиус явно не указан, градиент будет заполнять собой весь фон элемента.

<позиция> Задаёт начальную точку откуда исходит градиент. Позиция точки пишется аналогично значениям свойства background-position с помощью ключевых слов или доступных единиц измерения вроде пикселей или процентов; ниже приведены возможные сочетания.

  • top left = left top = 0% 0% (в левом верхнем углу);

  • top = top center = center top = 50% 0% (по центру вверху);

  • right top = top right = 100% 0% (в правом верхнем углу);

  • left = left center = center left = 0% 50% (по левому краю и по центру);

  • center = center center = 50% 50% (по центру) — это значение по умолчанию;

  • right = right center = center right = 100% 50% (по правому краю и по центру);

  • bottom left = left bottom = 0% 100% (в левом нижнем углу);

  • bottom = bottom center = center bottom = 50% 100% (по центру внизу);

  • bottom right = right bottom = 100% 100% (в правом нижнем углу).

<цвет> Представляет собой значение цвета (см. цвет), за которым идёт необязательная позиция цвета относительно оси градиента, она задаётся в процентах от 0% до 100% или в любых других подходящих для CSS единицах.

<размер> Устанавливает размер градиента. В табл. 1 перечислены возможные значения размера с их описанием и результатом для белого и чёрного цвета. Код и вид дан для кругового и эллиптического градиента.

Табл. 1. Ключевые слова для изменения размера градиента

Значение

Код

Описание

Вид

closest-side

background: radial-gradient(circle closest-side at 30px 20px, #fff, #000);

background: radial-gradient(closest-side at 30px 20px, #fff, #000);

Градиент совпадает с ближайшей к нему стороной блока (для круга) или одновременно совпадает с ближайшими горизонтальными и вертикальными сторонами (для эллипса).

closest-corner

background: radial-gradient(circle closest-corner at 30px 20px, #fff, #000);

background: radial-gradient(closest-corner at 30px 20px, #fff, #000);

Форма градиента вычисляется на основании информации о расстоянии до ближайшего угла блока.

farthest-side

background: radial-gradient(circle farthest-side at 30px 20px, #fff, #000);

background: radial-gradient(farthest-side at 30px 20px, #fff, #000);

Похож по своему действию на closest-side, но градиент распространяется до дальней стороны блока.

farthest-corner

background: radial-gradient(circle farthest-corner at 30px 20px, #fff, #000);

background: radial-gradient(farthest-corner at 30px 20px, #fff, #000);

Форма градиента вычисляется на основании информации о расстоянии до дальнего угла блока,

<style>

div {

background: radial-gradient(circle closest-side, #333 10px,

white 11px, white 30px, green 31px);

height: 70px;

}

Резкие переходы между разными цветами

<style>

div {

background: #ffb60f;

background: radial-gradient(circle at 80px 40px, #f9eec7, #ffb60f, #ffb60f);

padding: 20px;

}

</style>

Круговой градиент