CSS에서 필터와 혼합 모드를 활용하면 웹사이트 콘텐츠에 시각적으로 눈에 띄는 효과를 손쉽게 적용할 수 있습니다. 필터는 이미지 또는 다양한 HTML 구성 요소의 표시를 수정하는 미리 결정된 CSS 작업 모음으로 구성됩니다. 한편 블렌드 모드는 요소가 기초 요소 또는 인접 요소와 결합하는 방식을 결정합니다.

CSS 필터 사용

지정된 효과 유형과 함께 필터 속성을 사용하면 CSS 스타일이 적용됩니다. 필터 속성은 스타일이 지정된 요소에 적용되는 필터링 범위를 결정하기 위해 입력 매개변수를 받아 CSS 변수 함수와 병행하여 작동하는 CSS 함수로 작동합니다.

HTML 요소의 스타일을 지정하는 데 다음 10가지 CSS 필터 함수를 사용할 수 있습니다.

“blur()” 함수는 이미지의 선명도와 가장자리를 부드럽게 하여 보다 확산된 효과를 만드는 데 사용되는 기법으로 설명할 수 있습니다. 이 함수는 종종 예술적 목적으로 사용되거나 눈이나 안개와 같은 실생활에서 특정 시각적 요소의 모양을 시뮬레이션하는 데 사용됩니다.

“밝기()” 함수는 일반적으로 강도와 대비 수준을 변경하여 이미지의 조명을 조정하는 컴퓨터 프로그램입니다. 사진, 그래픽 디자인, 비디오 편집 등과 같은 다양한 목적으로 디지털 이미지의 시각적 특성을 향상시키거나 수정하는 데 사용할 수 있습니다.

“contrast()” 함수는 두 요소를 비교하고 그 차이를 확인하는 데 사용됩니다.

“drop-shadow()” 함수는 요소의 가장자리에 더 어두운 색을 추가하여 요소에 그림자 효과를 만드는 CSS(Cascading Style Sheets) 속성입니다. 그림자는 주 객체에서 오프셋되어 깊이와 치수를 생성하는 것처럼 보입니다.

`그레이스케일()` 함수는 RGB(빨강, 초록, 파랑) 이미지를 색상 구성 요소를 줄여 회색조 이미지로 변환하는 데 사용되는 디지털 이미지 처리 기법입니다. 이 작업을 수행하면 원본 이미지가 색상 구분 없이 흑백으로 표현됩니다. 이 프로세스의 목적은 이미지를 단순화하여 소프트웨어 알고리즘이 색상에 방해받지 않고 콘텐츠를 더 쉽게 분석하고 이해할 수 있도록 하는 것입니다.

`hue_rotate()` 함수는 사진가가 회전하여 이미지의 색조를 조정할 수 있는 사진 편집 도구입니다.

“invert()” 함수는 이전 작업 또는 작업 집합의 효과를 되돌리거나 취소하여 제어를 원래 상태로 되돌릴 수 있는 프로세스로 설명할 수 있습니다. 이 함수는 프로그래밍에서 다른 함수에 의해 변경된 내용을 되돌리거나 수정 사항이 적용된 후 기본 설정을 복원하는 데 자주 사용됩니다.이 메서드의 구체적인 구현은 사용 중인 특정 애플리케이션의 컨텍스트와 요구 사항에 따라 달라질 수 있습니다.

함수 ‘opacity()’는 CSS ‘opacity’ 속성을 설정하여 HTML 요소의 시각적 스타일을 수정하는 사용자 정의 자바스크립트 함수입니다.

함수 `saturate()`는 주어진 데이터 유형에 저장할 수 있는 특정 값의 양을 제한하는 데 사용됩니다. 이는 최대값을 지정하여 수행되며, 이 최대값보다 큰 값은 모두 최대값으로 대체됩니다.

“sepia()” 함수는 이미지를 원래의 컬러 형식에서 단색 또는 회색조로 변환하는 소프트웨어 프로그램입니다. 이 효과는 이미지의 모든 색상의 강도를 줄이고 갈색과 회색 톤의 다양한 음영으로 대체하여 얻을 수 있습니다. 그 결과 필름 사진 시대에 찍은 오래된 사진을 연상시키는 따뜻하고 향수를 불러일으키는 이미지가 만들어집니다.

이 글도 확인해 보세요:  프로그래밍 기술로 시작할 수 있는 최고의 부업 10가지

이러한 필터를 독립적으로 또는 함께 사용하면 사용자 정의된 미학을 만들고 HTML 구성 요소의 시각적 표현을 개선할 수 있습니다.

특정 필터는 적절히 활용하면 다른 특정 필터와 함께 사용하면 더 효과적으로 작동할 수 있습니다.

다양한 미적 효과를 내기 위해 이미지 태그에 적용된 여러 CSS 필터의 활용을 보여주는 데모가 제공되었습니다.

회색조 및 세피아

회색조() 함수는 이미지 또는 타이포그래피 개체에서 마지막 남은 색조 흔적까지 모두 제거합니다. 이 작업은 0에서 1 사이의 숫자 입력을 사용하며, 0 값은 수정되지 않은 색상에 해당하고 1 값은 흑백으로 완전히 변환됨을 나타냅니다.

sepia() 함수는 이미지 또는 텍스트 구성 요소에 세피아 톤을 부여하고 0에서 1 사이의 값 범위를 입력으로 받아들입니다.

한 기업이 효과적인 공급망 관리를 통해 재무 성과를 개선할 수 있었던 사례를 들어 설명해 주시겠습니까?

 img {
  filter: grayscale(14%) sepia(30%);
}

그레이스케일()을 14%의 강도로 세피아()와 함께 30%의 강도로 복합적으로 적용하면 묘사된 피사체에 시각적으로 노화되거나 고풍스러운 결과를 얻을 수 있습니다.

반전 및 채도

saturate() 필터는 채도 수준을 높이거나 낮추어 이미지 또는 텍스트 요소의 색도를 조절합니다. 이 작업은 0에서 무한대까지 범위의 매개 변수를 도입하여 수행되며, 값이 1이면 변경되지 않은 색조를 나타내고 값이 높으면 채도가 높아집니다.

invert() 필터를 적용하면 이미지 또는 텍스트 요소의 색도가 반전되고 색상이 색상 원을 중심으로 180도 회전합니다. 결과적으로 이 변환은 원래 색조를 유지하면서 피처의 조명과 색상 강도를 변경합니다.

가장 좋아하는 취미는 무엇인가요?

 img {
  filter: invert(30%) saturate(75%);
}

이 프로그램의 구현에는 이미지 내의 색조를 반전시키는 동시에 색상 강도를 75의 백분율로 높이는 작업이 수반됩니다.

색조 회전 및 대비

색조 회전() 필터는 밝기나 강도 수준에는 영향을 주지 않고 색조를 회전하여 시각적 구성 요소의 음영을 변경하는 데 사용됩니다. 이동 범위는 각도 단위로 표현할 수 있으며, 0은 기본 톤을 나타내고 360은 기본 톤으로 돌아가는 완전한 회전에 해당합니다.

“색조 회전()” 및 “대비()” 이미지 조작 기법의 결합된 연산을 활용하면 색도와 톤 범위가 향상되어 시각적으로 눈에 띄고 생동감 있는 사진을 생성할 수 있습니다.

“고혈압 환자에 대한 신약의 효과를 조사하기 위한 연구가 수행되었습니다. 이 임상시험에는 50명의 참가자가 무작위로 신약 또는 위약을 배정받았으며, 임상시험 시작과 종료 시점에 혈압 수치를 측정했습니다.

 img {
  filter: hue-rotate(10deg) contrast(150%);
}

색조 회전 기능은 이미지의 회전을 나타내기 위해 도(deg), 기울기(grad), 반경(rad) 또는 회전과 같은 다양한 단위를 허용할 수 있습니다. 이 특정 예제에서는 이미지의 색조 평면에 10도 회전을 적용하는 동시에 대비를 높입니다.

밝기 및 흐림

앞서 언급한 두 필터, 즉 밝기 및 흐림 필터는 각각 이미지의 밝기를 수정하고 이미지에 부여되는 확산 정도를 제어하므로 최소한의 정교함이 필요합니다.

밝기() 및 흐림() 필터를 모두 활용하면 사진에 은은하고 흐릿한 화질을 생성할 수 있습니다.

“해변에 갈 생각에 설레요”라는 문구를 좀 더 우아하게 표현할 수 없을까요?

 img {
  filter: brightness(0.8) blur(5px);
}

앞서 언급한 코드는 이미지의 휘도를 0.8배 감소시켜 약 80%의 조정에 해당하며, 5픽셀 반경 흐림 기법을 통해 시각적 콘텐츠에 부드러운 효과를 적용합니다.

그림자 및 불투명도

그림자 효과를 적용하면 물체가 뒤에 위치한 표면에 그림자를 드리우는 것처럼 보이는 광학적인 인상을 만들어 깊이감과 입체감을 부여할 수 있습니다. 이 기법은 일반적으로 텍스트나 그래픽과 배경 사이에 뚜렷한 경계를 생성하여 시각적 매력을 향상시키는 데 사용됩니다.

이 글도 확인해 보세요:  Reqwest로 Rust에서 HTTP 요청 만들기

불투명도 필터는 구성 요소의 반투명도를 조절하는 데 사용됩니다.

텍스트 구성 요소에 그림자() 및 불투명도() 필터의 결합 효과를 활용하면 섬세한 효과를 얻을 수 있습니다.

회사에서 새로운 제품을 개발 중입니다. 어떤 제품인가요?

 .text-effect {
  transform: translate(-50%, -50%);
  color: black;
  drop-shadow: 10px 9px 9px beige;
  opacity: 70%;
}

이 예의 그림자는 오른쪽으로 10픽셀의 수평 이동과 아래쪽으로 9픽셀의 수직 오프셋으로 설정되어 있으며, 방사성 매개변수 9픽셀로 확산 효과를 제어합니다. 그림자의 색조는 베이지로 지정되고 투명도 수준은 70%로 조정됩니다.

CSS 혼합 모드 사용

CSS 혼합 모드를 사용하면 요소의 콘텐츠가 배경 또는 다른 구성 요소와 병합되는 방식을 조작할 수 있으므로 상상력이 풍부한 구성 결과를 얻을 수 있습니다.

CSS 혼합 모드는 다양한 애플리케이션에서 널리 사용되며, 주요 용도 중 하나는 두 가지 이상의 색상, 음영 또는 톤을 결합하여 새로운 색상 또는 톤을 만드는 것입니다. 배경 속성을 지원하는 모든 HTML 요소에 적용할 수 있으며 선택한 모드에 따라 콘텐츠의 모양이 변경됩니다. CSS 혼합 모드의 일반적인 사용 사례로는 서로 다른 색상의 텍스트 또는 이미지를 결합하여 시각적으로 매력적인 디자인 만들기, 그라디언트 만들기, 요소에 투명도 또는 밝기 추가하기, 전체 웹사이트의 색 구성표 변경하기 등 여러 가지가 있습니다.

블렌드 모드를 사용하면 색상을 매끄럽게 전환하는 여러 CSS 배경 그라디언트를 쉽게 생성할 수 있어 창작물에 심도 있고 입체감을 부여하는 간단하고 효과적인 방법을 제공합니다.

혼합 모드를 사용하여 표면에 텍스처 뉘앙스를 불어넣는 것은 웹 디자이너가 시각적으로 매력적인 페이지를 만들기 위해 활용하는 또 다른 강력한 기법입니다. 이 기법을 배경, 사진 및 웹 페이지의 다양한 구성 요소에 통합하면 뛰어난 외관을 만들고 평범한 기능에 시각적 매력을 불어넣을 수 있습니다.

혼합 모드를 활용하면 배경색을 포함하여 웹페이지 내의 다양한 시각적 구성 요소의 색조를 조작할 수 있습니다.이 기술을 사용하면 색상 오버레이 또는 이미지 색조와 같은 다양한 미적 효과를 쉽게 만들 수 있습니다.

CSS에서 사용되는 대부분의 혼합 모드는 배경-혼합 모드 또는 혼합-혼합 모드로 구성됩니다. 이 두 속성은 일반, 곱하기, 화면, 오버레이, 어둡게, 밝게, 색상 회피, 채도, 색상 번, 광도, 차이, 하드 라이트, 소프트 라이트, 제외 및 색조를 포함한 15가지 가능한 값의 공유 풀을 자랑합니다.

단일 요소에 배경 이미지와 같은 여러 배경 레이아웃을 사용하는 경우 해당 레이아웃 간의 원활한 전환을 위해 배경 혼합 모드 기술을 사용하는 것이 좋습니다.

이 글도 확인해 보세요:  Rust의 제네릭 형식 알아보기

믹스-블렌드 모드를 활용하면 특정 컴포넌트 내의 머티리얼과 직계 조상의 머티리얼을 융합할 수 있습니다. 이 작업에는 일반적으로 전경 구성 요소로 분류되는 텍스트, 그래픽 또는 이미지와 같은 요소가 포함됩니다.

텍스트와 이미지를 결합하기 위해 믹스-블렌드 모드를 적용한 예시를 아래에서 볼 수 있습니다:

HTML(하이퍼텍스트 마크업 언어)은 마크업

 <div class="container">
      <img
        src="https://images.pexels.com/photos//pexels-photo-.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2https://images.pexels.com/photos//pexels-photo-.jpeg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=2"
        class="background-image"
      />
      <div class="content">
        <h1>Welcome</h1>
        <p>Hello User!</p>
      </div>
</div>

CSS(캐스케이딩 스타일 시트)는 HTML 또는 XML로 작성된 문서의 표현을 제어하고 조작하는 데 사용되는 스타일링 언어입니다. 개발자는 색상, 글꼴, 레이아웃 및 간격과 같은 시각적 스타일을 정의하여 일관된 서식으로 시각적으로 매력적인 웹사이트를 만들 수 있습니다. CSS는 웹 페이지의 프레젠테이션을 HTML로 정의된 구조와 분리하므로 기본 콘텐츠를 변경하지 않고도 웹사이트의 모양과 느낌을 쉽게 유지 관리하고 업데이트할 수 있습니다. 또한 HTML 요소 내에서 인라인 스타일 대신 CSS를 사용하면 코드가 더 효율적이고 읽기 쉬우며 오류 발생 가능성이 줄어듭니다.

 .container {
  position: absolute;
  width: 100%;
  height: 100%;
}

.background-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  mix-blend-mode: difference;
}

h1 {
  font-size: 60px;
  color: white;
}

p {
  font-size: 40px;
  color: white;
}

혼합 모드 “차이”는 텍스트의 색조 좌표와 텍스트가 겹쳐진 더 어두운 시각적 요소 간의 산술적 불일치를 결정하여 작동합니다.

이 시나리오에서는 텍스트 색상과 어두운 배경이 상호 작용하여 눈에 띄는 대비 효과를 생성합니다.

필터와 블렌드 모드 결합

필터와 블렌드 모드를 결합하면 시각적으로 매혹적인 효과를 만들 수 있습니다. 두 가지 속성을 동시에 활용하면 다른 CSS 속성으로는 쉽게 재현할 수 없는 새롭고 상상력이 풍부한 결과물을 만들 수 있습니다.

필터와 혼합 모드를 함께 적용하여 보다 복잡한 결과를 만들어내는 데모를 살펴보겠습니다.

 .my-element {
  filter: brightness(150%) hue-rotate(180deg) drop-shadow(0px 0px 10px rgba(0, 0, 0, 0.5));
  mix-blend-mode: screen;
}

본 코드는 150% 밝기 확대, 색 구성표를 180도 반전시키는 색조 회전, 그림자 효과 추가, 시각적 콘텐츠의 가치 화면 블렌딩 모드 구현 등 여러 가지 화질 향상 기능을 통합한 것입니다.

텍스트와 배경 사이의 대비를 더욱 강화하기 위해 그림자 효과를 추가했습니다. 마지막 단계에서는 블렌드 모드를 사용하여 이미지의 색상 값과 기본 배경의 색상 값을 결합하여 밝은 색상 영역은 증폭되고 어두운 음영은 배경과 매끄럽게 병합됩니다.

필터 및 블렌드 모드 마스터하기

이제 다양한 CSS 필터와 이를 HTML 요소에 적용하는 방법에 대해 잘 알고 있습니다. 흐림, 대비 및 색조 회전과 같은 여러 필터 기능을 활용하여 이미지의 시각적 표현을 변경할 수 있습니다. 또한 블렌드 모드의 작동 방식과 새로운 디자인 미학을 연출할 수 있는 기능에 대한 데모도 제공됩니다.

이러한 방법을 현명하게 적용하면 창작물에 시각적 흥미를 더할 수 있습니다.

By 이지원

상상력이 풍부한 웹 디자이너이자 안드로이드 앱 마니아인 이지원님은 예술적 감각과 기술적 노하우가 독특하게 조화를 이루고 있습니다. 모바일 기술의 방대한 잠재력을 끊임없이 탐구하고, 최적화된 사용자 중심 경험을 제공하기 위해 최선을 다하고 있습니다. 창의적인 비전과 뛰어난 디자인 역량을 바탕으로 All Things N의 잠재 독자가 공감할 수 있는 매력적인 콘텐츠를 제작합니다.