Wave

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

Для браузеров IE 5.5-7 фильтры можно подключать в CSS документ с помощью CSS свойства filter. В IE8+ для этого предусмотрено вендорное CSS свойство -ms-filter. Причем из-за особенностей синтаксического анализатора IE8 их порядок имеет значение: -ms-filter должен идти первым.

Синтаксис

div {
   -ms-filter:"progid:DXImageTransform.Microsoft.Wave(<параметры>)";
   filter:progid:DXImageTransform.Microsoft.Wave(<параметры>);

}

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

Параметры фильтра

Параметр Описание Возможные значения Значение по умолчанию
add флаг, сигнализирующий о том, нужно ли отображать исходное изображение вместе с работой фильтра, или только результаты работы фильтра
  • true - результат работы фильтра накладывается сверху на исходный элемент
  • false - отображается только результат работы фильтра
false
enabled флаг, управляющий фильтром
  • true - фильтр включен
  • false - фильтр отключен
true
freq определяет количество волн создаваемых фильтром целое число 3
lightStrength определяет интенсивность цветового выделения пиков и впадин волн в процентах
  • 0 - минимальное цветовое выделения пиков и впадин волн
  • ....................................................
  • 100 - максимальное цветовое выделения пиков и впадин волн
100
phase определяет сдвиг синусоиды волны 0-100 (чтобы вместо пиков получить впадины, можно использовать значение 50) 0
strength определяет расстояние в пикселях вокруг элемента, на которое может выходить результат работы фильтра (оно равно амплитуде волны) больше 1 1

Примеры

Элемент с наложенной одной волной c амплитудой 10px начинающейся с пика со средней интенсивностью цветового выделения пиков и впадин.

div {
   -ms-filter:"progid:DXImageTransform.Microsoft.Wave(add=true, freq=1, lightStrength=50, phase=25, strength=10)";
   filter:progid:DXImageTransform.Microsoft.Wave(add=true, freq=1, lightStrength=50, phase=25, strength=10);
}