English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
CSS3필터 효과는 이미지에 시각 효과를 적용하는 쉬운 방법을 제공합니다。
이 장에서는 CSS3에 도입된 필터 효과를 사용하여, 이미지와 같은 그래픽 요소에 시각 효과를 적용하기 전에, 불림, 대비와 밝기, 색饱和도와 같은 시각 효과를 조정할 수 있습니다.
CSS3 filter 속성은 필터 효과를 요소에 적용하며, 이 속성은 제공된 순서대로 하나나 여러 개의 필터 함수를 받아줍니다. 다음과 같은 예제를 참조하세요:
filter: blur() | brightness() | contrast() | drop-shadow() | grayscale() | hue-rotate() | invert() | opacity() | sepia() | saturate() | url();
경고:모든 버전의 Internet Explorer는 현재 CSS를3필터 효과. 오래된 IE 버전은 불규준한 filter 속성을 사용하여 불투명도와 같은 효과를 생성할 수 있지만, 이 기능은 더 이상 사용되지 않습니다。
같은 고사상 효과와 같은 Photoshop에서 사용할 수 있는 blur() 함수는 요소에 대해 CSS 길이 값을 받아서 가우시안 블러를 적용할 수 있습니다. 큰 값은 더 많은 블러를 생성합니다. 파라미터가 제공되지 않으면, 값 0을 사용합니다。
img { -webkit-filter: blur(5px); /* Chrome, Safari, Opera */ filter: blur(5px); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
blur(0) | blur(2px) | blur(5px) |
brightness() 함수는 이미지의 밝기를 설정하는 데 사용됩니다. 값 0%는 전체 검은 이미지를 생성합니다. 반대로 값100% 또는1이미지를 변환하지 않습니다. 다른 값은 효과의 선형 곱수입니다。
또한, 밝기를 높게 설정할 수 있습니다.100%,이렇게 하면 이미지가 더 밝아집니다. 수량 파라미터가 누락되면, 값1。음수 값을 사용할 수 없습니다。
img.bright { -webkit-filter: brightness(200%); /* Chrome, Safari, Opera */ filter: brightness(200%); } img.dark { -webkit-filter: brightness(50%); /* Chrome, Safari, Opera */ filter: brightness(50%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
brightness(50%) | brightness(100%) | brightness(200%) |
주의:75%는百分号으로 표시된 값(예를 들어)의 필터 함수는 십진수로 표시된 값(예를 들어 0.75)。이 값이 유효하지 않으면, 함수는 none을 반환하고 필터 효과를 적용하지 않습니다。
contrast() 함수는 이미지의 대비를 조정하는 데 사용됩니다. 값 0%는 전체 검은 이미지를 생성합니다. 반대로 값100% 또는1이미지를 변환하지 않습니다. 또한,100%의 값으로 인해 대비가 낮은 결과를 제공합니다. 수량 파라미터가 누락되거나 생략된 경우1그 값을 사용합니다。
img.bright { -webkit-filter: contrast(200%); /* Chrome, Safari, Opera */ filter: contrast(200%); } img.dim { -webkit-filter: contrast(50%); /* Chrome, Safari, Opera */ filter: contrast(50%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
contrast(50%) | contrast(100%) | contrast(200%) |
drop 속성을 사용하여 이미지에 그림자를 추가할 수 있습니다-shadow() 함수는 Photoshop와 같은 이미지에 그림자 효과를 적용합니다. 이 기능은 다음과 같습니다box-shadow속성.
img { -webkit-filter: drop-shadow(4px 4px 10px 주황); /* Chrome, Safari, Opera */ filter: drop-shadow(4px 4px 10px 주황); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
drop-shadow(0) | drop-shadow(2px 2px 4px 주황) | drop-shadow(4px 4px 10px 주황) |
주의:drop-shadow() 함수의 첫 번째와 두 번째 매개변수는 쉼표의 수평 및 수직 이동을 지정하며, 세 번째 매개변수는 불투명도 반지름을 지정하고, 마지막 매개변수는 쉼표의 색상을 지정합니다. box-shadow 속성과 같지만 예외가 있습니다.39; inset39; 키워드를 사용할 수 없습니다.
이 grayscale() 기능을 사용하여 이미지를 회색으로 변환할 수 있습니다. 값100%는 완전한 회색입니다. 값 0%는 입력을 그대로 유지합니다. 0%에서100%는 효과의 선형 곱수입니다. 'amount' 매개변수가 누락되면 값 0을 사용합니다.
img.complete-gray { -webkit-filter: grayscale(100%); /* Chrome, Safari, Opera */ filter: grayscale(100%); } img.partial-gray { -webkit-filter: grayscale(50%); /* Chrome, Safari, Opera */ filter: grayscale(50%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
grayscale(0) | grayscale(50%) | grayscale(100%) |
이 hue-rotate() 기능은 이미지에 톤을 회전시킵니다. 전달된 매개변수는 이미지 샘플의 톤 루프 주위에서 회전할 도수를 정의합니다. 0deg는 이미지를 그대로 유지합니다. angle이 누락되면39;39; 매개변수, 0deg는 값을 사용합니다. 최대 값이 없으며, 위의 값은 효과를 유지합니다.360deg 반복.
img.hue-normal { -webkit-filter: hue-rotate(150deg); /* Chrome, Safari, Opera */ filter: hue-rotate(150deg); } img.hue-wrap { -webkit-filter: hue-rotate(480deg); /* Chrome, Safari, Opera */ filter: hue-rotate(480deg); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
hue-rotate(0) | hue-rotate(150deg) | hue-rotate(480deg) |
invert() 함수를 사용하여 이미지에 Photoshop와 같은 반전 효과를 적용할 수 있습니다. 100% 또는1의 값은 완전히 반전됩니다. 값 0%는 입력을 그대로 유지합니다. 0%에서100% 간의 값은 효과의 선형 곱수입니다. 'amount' 매개변수가 누락되면 값 0을 사용합니다. 음수 값을 사용할 수 없습니다.
img.partially-inverted { -webkit-filter: invert(80%); /* Chrome, Safari, Opera */ filter: invert(80%); } img.fully-inverted { -webkit-filter: invert(100%); /* Chrome, Safari, Opera */ filter: invert(100%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
invert(0) | invert(80%) | invert(100%) |
opacity() 기능은 이미지에 투명도를 추가할 수 있습니다. 값 0%는 완전 투명입니다.의 값100% 또는1이미지를 변경하지 않도록 합니다. 값 0%는 완전 투명입니다.의 값100%는 효과의 선형 곱수입니다. 매개변수가 누락되면39; amount' 매개변수, 그렇다면 값 사용1。이 기능은 다음과 같습니다opacity속성.
img { -webkit-filter: opacity(80%); /* Chrome, Safari, Opera */ filter: opacity(80%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
opacity(100%) | opacity(80%) | opacity(30%) |
sepia() 기능은 이미지를 브론즈 톤으로 변환합니다.100% 사이의 값은 완전히 브론즈 톤입니다.1완전히 브론즈 톤입니다. 값 0%는 이미지를 그대로 유지하고, 값 0%와100%는 효과의 선형 곱수입니다. 매개변수가 누락되면39; amount' 매개변수, 그렇다면 값 0 사용
img.complete-sepia { -webkit-filter: sepia(100%); /* Chrome, Safari, Opera */ filter: sepia(100%); } img.partial-sepia { -webkit-filter: sepia(30%); /* Chrome, Safari, Opera */ filter: sepia(30%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
sepia(0%) | sepia(30%) | sepia(100%) |
힌트:사진 촬영에서, 브론즈 톤은 특별한 처리 방법으로, 흑백 사진에 더 따뜻한 톤(홍색과 갈색)을 주어, 그 저archive 품질을 강화할 수 있습니다.
saturate() 기능은 이미지의 분해도를 조정할 수 있습니다. 값 0%는 완전히 비분해도입니다. 값100%는 이미지를 그대로 유지합니다. 다른 값은 효과의 선형 곱수입니다. 또한 값이100%,그로 인해 과대칭 결과를 제공합니다. amount & 매개변수가 누락되면39; amount ' 매개변수, 그렇다면 값 사용1。
img.un-saturated { -webkit-filter: saturate(0%); /* Chrome, Safari, Opera */ filter: saturate(0%); } img.super-saturated { -webkit-filter: saturate(200%); /* Chrome, Safari, Opera */ filter: saturate(200%); }테스트를 보세요‹/›
—위 예제의 출력은 다음과 같습니다:
saturate(100%) | saturate(200%) | saturate(0%) |
주의:이 url() 함수는 특정 필터 요소에 대한 필터 참조를 지정합니다. 예를 들어, url(commonfilters.svg#foo)。필터가 존재하지 않는 요소에 대한 참조나 참조된 요소가 필터 요소가 아니면 전체 필터 링크가 무시됩니다. 요소에 대한 필터가 적용되지 않습니다.