Css img размытые края

Функции фильтров

CSS позволяет накладывать поверх картинок или фонов различные фильтры. Почти как в Инстаграме. Можно, например, размыть или обесцветить изображение, сделать его более контрастным.

Функции используются в качестве значений для свойств filter и backdrop — filter .

Пример

Скопировать ссылку «Пример» Скопировано

 div  filter: saturate(2.2);> div  filter: saturate(2.2); >      

Как пишется

Скопировать ссылку «Как пишется» Скопировано

blur ( )

Скопировать ссылку «blur()» Скопировано

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

 img  filter: blur(3px);> img  filter: blur(3px); >      

brightness ( )

Скопировать ссылку «brightness()» Скопировано

Меняет яркость изображения. В скобках можно указать любое значение от 0% и выше. Значение 0% сделает изображение полностью чёрным. Значение 100% вернёт изображению исходную яркость. Значение больше 100% выкрутит яркость картинки. Значением может быть целое или дробное число без единиц измерения.

 img  filter: brightness(30%);> img  filter: brightness(30%); >      

contrast ( )

Скопировать ссылку «contrast()» Скопировано

Меняет контраст изображения. В скобках можно указать любое значение от 0% и выше. Значение 0% сделает изображение полностью чёрным. Значение 100% вернёт изображению исходный контраст. Значение больше 100% усилит исходный контраст. Значением может быть целое или дробное число без единиц измерения.

 img  filter: contrast(250%);> img  filter: contrast(250%); >      

drop — shadow ( )

Скопировать ссылку «drop-shadow()» Скопировано

Задаёт тень для картинки. Тень располагается снаружи элемента. Эта функция очень похожа на box — shadow по допустимым значениям и результату. Разница лишь в том, что нельзя указывать ключевое слово inset .

 img  filter: drop-shadow(4px 4px red);> img  filter: drop-shadow(4px 4px red); >      

grayscale ( )

Скопировать ссылку «grayscale()» Скопировано

Делает изображение чёрно-белым. В скобках можно указать значение от 0% до 100%. Значение 100% сделает изображение полностью чёрно-белым. Значение 0% вернёт изображению исходные цвета. Значением может быть целое или дробное число без единиц измерения.

 img  filter: grayscale(80%);> img  filter: grayscale(80%); >      

hue — rotate ( )

Скопировать ссылку «hue-rotate()» Скопировано

Меняет цвета изображения за счёт поворота цветового круга. Угол поворота указывается в скобках функции. Можно указывать угол в градусах deg или в поворотах turn .

 img  filter: hue-rotate(0.5turn);> img  filter: hue-rotate(0.5turn); >      

invert ( )

Скопировать ссылку «invert()» Скопировано

Инвертирует цвета изображения, как бы выворачивает их, превращая в противоположные. В результате получается что-то вроде негатива. Можно указать процент инверсии от 0% до 100%. При 100% цвета на картинке полностью инвертированы. Отрицательные значения или значения больше 100% не допускаются.

 img  filter: invert(100%);> img  filter: invert(100%); >      

opacity ( )

Скопировать ссылку «opacity()» Скопировано

Меняет прозрачность изображения. Можно указать процент прозрачности от 0% до 100%. 0% делает картинку полностью прозрачной. 100% не меняет прозрачность изображения. Отрицательные значения или значения больше 100% не допускаются.

Очень похоже на работу свойства opacity с той разницей, что для фильтра браузер, как правило, применяет аппаратное ускорение для улучшения производительности.

 img  filter: opacity(40%);> img  filter: opacity(40%); >      

saturate ( )

Скопировать ссылку «saturate()» Скопировано

Меняет насыщенность цветов изображения. Значение 0% полностью убирает насыщенность цветов. Значение 100% не изменяет исходное изображение. Допускаются значения больше 100% что приводит к перенасыщенности. Нельзя указать отрицательное значение.

 img  filter: saturate(390%);> img  filter: saturate(390%); >      

sepia ( )

Скопировать ссылку «sepia()» Скопировано

Меняет цвета изображения на сепию — коричневые оттенки. Значение 100% полностью преобразует изображение в сепию. Значение 0% не изменяет исходное изображение. Отрицательные значения или значения больше 100% не допускаются. Можно использовать целое или дробное число без единиц измерения в качестве значения.

 img  filter: sepia(0.6);> img  filter: sepia(0.6); >      

Все фильтры сразу

Скопировать ссылку «Все фильтры сразу» Скопировано

Подсказки

Скопировать ссылку «Подсказки» Скопировано

💡 Можно указать сразу несколько фильтров для одного элемента, перечислив их через пробел.

На практике

Скопировать ссылку «На практике» Скопировано

Елена Соколовская советует

Скопировать ссылку «Елена Соколовская советует» Скопировано

🛠 С помощью drop — shadow ( ) мы можем создать тень по форме самого изображения. Функция учитывает альфа-канал картинки и способна отбрасывать не только прямоугольную тень, как в случае с box — shadow .

 .box-shadow  box-shadow: 4px 4px 10px red;>.drop-shadow  filter: drop-shadow(4px 4px 10px red);> .box-shadow  box-shadow: 4px 4px 10px red; > .drop-shadow  filter: drop-shadow(4px 4px 10px red); >      

Источник

Размытие отдельных областей изображения в CSS

В этом руководстве мы узнаем, как создать эффект размытого изображения с помощью фильтров CSS. А также как ограничить размытие в конкретной области изображения.

Сделаем это!

Компонент, который мы создадим в этом руководстве, основан на фреймворке CodyHouse.

В качестве примера мы создадим копию изображения, применим к ней filter: blur . После этого наложим маску, чтобы размыть лишь нужную часть фотографии.

Создаем копию изображения с помощью псевдоэлемента ::before , примененного к элементу .team__caption :

.team--blurred-img < .team__caption < overflow: hidden; &::before < content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-image: url('../../assets/img/img-01.jpg'); background-repeat: no-repeat; background-position: center bottom; background-size: 100% auto; filter: blur(8px); transform: scale(1.1); >> .team__name < background: alpha(var(--color-black), 0.6); padding: var(--space-sm); z-index: 1; >>

Устанавливаем background-position: center bottom ; и background-size: 100% auto; , чтобы копия изображения полностью перекрывала оригинал.

Используя идентификаторы, устанавливаем для каждого снимка разные background-image.

.team--blurred-img < // . #james < .team__caption::before < background-image: url('../../assets/img/img-01.jpg'); >> #emily < .team__caption::before < background-image: url('../../assets/img/img-02.jpg'); >> #mathew < .team__caption::before < background-image: url('../../assets/img/img-03.jpg'); >> #olivia < .team__caption::before < background-image: url('../../assets/img/img-04.jpg'); >> >

Мы используем .team__caption , поэтому копия изображения ограничивается этой областью. Также мы применили к этому элементу overflow: hidden , чтобы обрезать дочерние элементы, если их размеры превышают размеры контейнера своего.

После применения фильтра blur заметно, что края изображения стали полупрозрачны. Это можно исправить, создав дополнительную копию изображения с помощью псевдоэлемента ::after . А также увеличив размер псевдоэлемента ::before с помощью масштабирования через transform: scale.

.team--blurred-img < .team__caption < overflow: hidden; &::before, &::after < content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-repeat: no-repeat; background-position: center bottom; background-size: 100% auto; filter: blur(8px); >&::before < transform: scale(1.1); >> #james < .team__caption::before, .team__caption::after < background-image: url('../../assets/img/img-01.jpg'); >> #emily < .team__caption::before, .team__caption::after < background-image: url('../../assets/img/img-02.jpg'); >> #mathew < .team__caption::before, .team__caption::after < background-image: url('../../assets/img/img-03.jpg'); >> #olivia < .team__caption::before, .team__caption::after < background-image: url('../../assets/img/img-04.jpg'); >> .team__name < background: alpha(var(--color-black), 0.6); padding: var(--space-sm); z-index: 1; >>

Также можно настроить таргетинг на браузеры, которые поддерживают свойство backdrop-filter . Это позволит реализовать размытие всего одной строкой кода.

К сожалению, на данный момент это свойство поддерживается не всеми браузерами. Поэтому мы решили использовать оба варианта.

браузерами. Поэтому мы решили использовать оба варианта. @supports (backdrop-filter: blur(10px)) < .team--blurred-img .team__caption < backdrop-filter: blur(10px); &::before, &::after < display: none; >> >

Готово! Теперь можно размыть еще больше изображений!

Вадим Дворников автор-переводчик статьи « How to create clipped, blurred background images in CSS »

Пожалуйста, оставьте ваши мнения по текущей теме статьи. За комментарии, отклики, лайки, подписки, дизлайки огромное вам спасибо!

Источник

Css img размытые края

Когда мы используем границу для изображения, мы хотим чтобы результат выглядел более привлекательным. Это, как известно, позволяет отделить картинку от другого контента на странице. Рассмотрим способы отрисовки границы.

Без бордера

Без использования границы:

Используем бордер

Используя границу:

Двойной бордер

С “Двойной границей“:

То что вы видите можно просто сделать в графических редакторах, таких как Photoshop, ImageReady или FireWorks. Но давайте подумаем что надо будет сделать, если, например, вам нужно поменять границу изображения, которое уже использовалось на сайте, а в связи со сменой дизайна надо её поменять. Вам надо будет открыть каждую картинку в редакторе и поменять бордер. Если у вас на сайте всего 3-4 изображения, то это займёт несколько минут, а если у вас их 100?

Вы можете добиться такого же эффекта очень просто с помощью CSS. И вам понадобится всего несколько секунд чтобы поменять все границы на сайте.

Как мы это сделаем?

Двойной бордер, подсвеченный цветом:

Другие плюсы этой техники.

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

Источник

How To Get Crisp Edges with the CSS Blur Filter

I wanted to create a hover effect (currently seen on my portfolio page) where the picture blurs when the user hovers over it so the text on top is legible. Simple enough, right? There’s even a handy little CSS blur filter. All you have to do is pass in an argument for the blur radius.

The Problem

Here is an image with the class blur that gives it the property filter: blur(4px) . As you can see, it looks simply horrendous.

Photo with fuzzy edges

HTML

Photo with crisp edges

SASS

.blur-wrapper width: 50% // this is where you style the image width overflow: hidden // clips feathery edges .blur width: 100% // necessary for photo to scale correctly -webkit-transform: scale(1.05) // makes fuzzy edges go to overflow of .blur-wrapper transform: scale(1.05) -webkit-filter: blur(4px) filter: blur(4px)

Designed and built by Chloe Atchue-Mamlet in 2015 using Jekyll and hosted on Github Pages. View the source code.

Источник

Читайте также:  Python unzip file to folder
Оцените статью