В графических редакторах очень легко менять яркость или контраст изображений, применять различные фильтры. С недавних пор это можно делать и средствами CSS прямо на веб-страницах с помощью CSS Filter Effects.
Поддержка браузеров
Числа в таблице указывают первую версию браузера, которая полностью поддерживает свойство.
Числа с приставкой -webkit- указывают первую версию, которая работала с приставкой.
Chrome | Firefox | IE | Opera | Safari |
18.0 -webkit- | 35.0 | Не поддерживается | 15.0 -webkit- | 6.0 -webkit- |
Синтаксис
filter: none | blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | saturate() | sepia() | url();
none – Значение по умолчанию. Не указывает, никаких эффектов
blur(px) – К изображению применяется эффект размытия . Большее значение будет создавать больше размытия .По умолчанию используеться значение 0 .
Пример
img { filter: blur(3px); -webkit-filter: blur(3px); }
brightness(%) – Регулировка яркости изображения .0% делает изображение полностью черным .100% является по умолчанию и представляет собой исходное изображение.Значения более 100% обеспечит более яркие результаты.
Пример
img { filter: brightness(150%); -webkit-filter: brightness(150%); }
contrast(%) – Регулировка контрастности изображения.0% делает изображение полностью черным.100% является по умолчанию и представляет собой исходное изображение. Значения более 100% обеспечит результаты с меньшим количеством контраста.
Пример
img { filter: contrast(200%); -webkit-filter: contrast(200%); }
drop-shadow(h-shadow v-shadow blur spread color) – Применяется эффект тени к изображению.
Возможные значения:
- h-shadow – Обязательно. Задает значение пикселя для горизонтальной тени. Отрицательные значения поместить тень слева от изображения.
- v-shadow – Обязательно. Задает значение пикселя для вертикальной тени. Отрицательные значения поместите тень над изображением.
- blur – необязательно. Это третье значение, и должно быть в пикселях. Добавляет эффект размытия тени. Большее значение будет создавать больше размытие (тень становится больше и светлее). Отрицательные значения не допускаются. Если не указано значение, используется 0 (край теневой является резкое).
- spread – Необязательно. Это четвертое значение, и должно быть в пикселях. Положительные значения заставит тень расширяться и расти больше, а отрицательные значения приведет тень сокращаться. Если не указано, то будет 0 (тень будет иметь тот же размер, как элемент).
- color – необязательно. Добавляет цвет тени. Если не указано, цвет зависит от браузера (часто черного цвета).
Пример
img { filter: drop-shadow(8px 8px 10px ); -webkit-filter: drop-shadow(8px 8px 10px ); }
grayscale(%) – Преобразование изображения в оттенках серого.0% по умолчанию , и представляет собой исходное изображение.100% сделает изображение полностью серый (используется для черно-белых изображений ).
Пример
img { filter: grayscale(50%); -webkit-filter: grayscale(50%); }
hue-rotate(deg) – Применяется поворот цветового тона на изображении. Значение определяет какое количество градусов вокруг цветового круга будет скорректирован. 0deg по умолчанию , и представляет собой оригинальное изображение.
Пример
img { filter: hue-rotate(90deg); -webkit-filter: hue-rotate(90deg); }
invert(%) – Инвертирует образцы в изображении.0 по умолчанию , и представляет собой исходное изображение .100% сделает изображение полностью перевернутой.
Пример
img { filter: invert(100%); -webkit-filter: invert(100%); }
opacity(%)Устанавливает уровень непрозрачности для изображения.0% является полностью прозрачным. 100% является по умолчанию и представляет собой исходное изображение (без прозрачности).
Пример
img { filter: opacity(30%); -webkit-filter: opacity(30%); }
saturate(%) – Насыщает изображение .0% сделает изображение не – насыщенными.100% по умолчанию и представляет собой исходное изображение.Значения более 100% обеспечивает супер – насыщенные результаты .
Пример
img { filter: saturate(800%); -webkit-filter: saturate(800%); }
sepia(%) – Преобразует изображение в сепии.0% по умолчанию , и представляет собой исходное изображение. 100% делает изображение полностью сепией .
Пример
img { filter: sepia(100%); -webkit-filter: sepia(100%); }
Если хотите использовать несколько фильтров, надо каждый фильтр отделить пробелом.