CSS 그라디언트 가이드: 선형, 방사형 및 원추형 그라디언트
Embed This Widget
Add the script tag and a data attribute to embed this widget.
Embed via iframe for maximum compatibility.
<iframe src="https://colorfyi.com/iframe/entity//" width="420" height="400" frameborder="0" style="border:0;border-radius:10px;max-width:100%" loading="lazy"></iframe>
Paste this URL in WordPress, Medium, or any oEmbed-compatible platform.
https://colorfyi.com/entity//
Add a dynamic SVG badge to your README or docs.
[](https://colorfyi.com/entity//)
Use the native HTML custom element.
CSS 그레이디언트를 사용하면 단일 이미지 요청 없이 브라우저에서 직접 두 개 이상의 색상 사이를 부드럽게 전환할 수 있습니다. CSS3에 도입되어 이제 보편적으로 지원되는 그라데이션은 단순한 2스톱 페이드에서 텍스처, 기하학적 패턴 및 입체 효과를 생성할 수 있는 정교한 시각적 요소로 발전했습니다. 이 가이드는 모든 유형의 CSS 그래디언트를 살펴보고 구문을 자세히 설명하며 스타일시트에 직접 추가할 수 있는 실용적인 16진수 코드 예를 보여줍니다.
CSS 그라디언트란 무엇입니까?
CSS 그래디언트는 <image> 값의 특별한 유형입니다. 이는 프로그래밍 방식으로 색상 전환을 생성합니다. 즉, 브라우저는 정의된 색상 정지점 사이의 중간 색상을 계산합니다. 그라데이션은 색상이 아닌 이미지이므로 background-color가 아닌 background-image 또는 약식 background 속성을 사용하여 적용합니다.
CSS의 세 가지 그라데이션 유형은 다음과 같습니다.
linear-gradient()— 직선을 따라 색상이 전환됩니다.radial-gradient()— 중앙 지점에서 바깥쪽으로 색상이 방출됩니다.conic-gradient()— 중심점을 중심으로 색상이 회전합니다.
각 유형에는 요소 전체에 걸쳐 그라데이션 패턴을 타일링하는 repeating-* 변형(repeating-linear-gradient(), repeating-radial-gradient(), repeating-conic-gradient())도 있습니다.
선형 그래디언트
선형 그래디언트는 지정된 각도에서 직선을 따라 색상 전환을 그립니다.
기본 구문
background: linear-gradient(direction, color-stop1, color-stop2, ...);
direction 매개변수는 선택사항입니다. 이것이 없으면 그라데이션은 위에서 아래로 흐릅니다(to bottom 또는 180deg와 동일).
/* Top to bottom (default) */
background: linear-gradient(#3B82F6, #1E3A8A);
/* Left to right */
background: linear-gradient(to right, #3B82F6, #1E3A8A);
/* Diagonal */
background: linear-gradient(to bottom right, #3B82F6, #1E3A8A);
각도 구문
각도는 요소 상단에서 시계 방향으로 각도 단위로 측정됩니다. 0deg는 위쪽을 가리키고, 90deg는 오른쪽을 가리키고, 180deg는 아래쪽을 가리킵니다.
/* 45-degree diagonal from bottom-left to top-right */
background: linear-gradient(45deg, #FF6B6B, #FFC300);
/* 135-degree diagonal from top-left to bottom-right */
background: linear-gradient(135deg, #667EEA, #764BA2);
일반적인 사용 사례는 히어로 섹션 배경입니다. 예를 들어, 135도에서 #667EEA에서 #764BA2까지의 그라데이션은 흰색 텍스트 뒤에 잘 어울리는 멋진 보라색 대각선을 생성합니다.
방향 키워드
각도 대신 방향 키워드를 사용할 수 있습니다.
| 키워드 | 등가 각도 |
|---|---|
to top |
0deg |
to top right |
45deg |
to right |
90deg |
to bottom right |
135deg |
to bottom |
180deg |
to bottom left |
225deg |
to left |
270deg |
to top left |
315deg |
코드 검토 및 자체 문서화에서 키워드를 더 쉽게 읽을 수 있습니다. 대각선에 속하지 않는 정확한 각도에 대해 명시적인 각도를 예약합니다.
다중 색상 중지
색상 정지점은 그라데이션 선을 따라 각 색상이 시작하고 끝나는 위치를 정의합니다. CSS 길이나 백분율을 위치로 사용할 수 있습니다.
/* Three-stop gradient */
background: linear-gradient(to right, #FF6B6B, #FFD93D, #6BCB77);
/* Positioned stops */
background: linear-gradient(to right,
#FF6B6B 0%,
#FFD93D 50%,
#6BCB77 100%
);
/* Hard color stop (no transition) */
background: linear-gradient(to right,
#FF6B6B 0%,
#FF6B6B 50%,
#6BCB77 50%,
#6BCB77 100%
);
동일한 위치에 두 개의 스톱을 설정하는 하드 컬러 스톱 기술은 혼합 없이 색상 사이에 선명한 가장자리를 만듭니다. 이는 플래그와 같은 디자인, 진행률 표시기 또는 분할 화면 배경에 유용합니다.
힌트가 포함된 색상 중지
CSS는 두 색상 정지점 사이의 중간점 힌트를 지원하므로 보간이 가장 빠르거나 느린 위치를 제어할 수 있습니다.
/* Gradient lingers longer in the blue range */
background: linear-gradient(to right, #3B82F6, 30%, #EF4444);
30% 힌트는 파란색 #3B82F6과 빨간색 #EF4444 사이의 전환 중간점이 30% 표시에서 발생해야 파란색이 지속되고 빨간색이 빠르게 나타나도록 브라우저에 알려줍니다.
방사형 그라데이션
방사형 그라데이션은 중심점에서 바깥쪽으로 발산되어 원형 또는 타원형 패턴을 만듭니다.
기본 구문
background: radial-gradient(shape size at position, color-stop1, color-stop2);
모든 매개변수는 선택사항입니다. 기본값은 가장 먼 모서리에 도달할 수 있는 크기로 요소 중앙에 타원형 그래디언트를 생성합니다.
/* Simple center radial */
background: radial-gradient(#FFF176, #F57F17);
/* Explicit circle */
background: radial-gradient(circle, #A8E063, #2D6A4F);
모양
방사형 그래디언트는 circle(균일한 반경) 또는 ellipse(기본값, 요소에 맞게 늘어남)일 수 있습니다.
/* Circle: same radius in all directions */
background: radial-gradient(circle, #FF9A9E, #A18CD1);
/* Ellipse: stretches to fit element dimensions */
background: radial-gradient(ellipse, #FF9A9E, #A18CD1);
크기 키워드
크기는 그라디언트가 확장되는 정도를 제어합니다.
| 키워드 | 설명 |
|---|---|
closest-side |
그라데이션은 가장 가까운 쪽에서 끝납니다 |
closest-corner |
그라데이션은 가장 가까운 모서리에서 끝납니다 |
farthest-side |
그라데이션은 가장 먼 쪽에서 끝납니다 |
farthest-corner |
그라데이션은 가장 먼 모서리에서 끝납니다(기본값) |
/* Small spotlight in the top-left */
background: radial-gradient(circle closest-side at 25% 25%,
rgba(255,255,255,0.8),
transparent
);
위치
at 키워드는 유효한 CSS 위치 값을 사용하여 그라데이션의 중심점을 설정합니다.
/* Off-center gradient for a lighting effect */
background: radial-gradient(circle at 70% 30%, #FFE066, #FF6B6B, #2D3561);
/* Bottom-center spotlight */
background: radial-gradient(ellipse at 50% 100%, #667EEA, #1a1a2e);
그라디언트를 중심에서 벗어나 배치하면 광원의 모양이 만들어지며 이는 유리 형태 및 깊이 효과의 일반적인 기술입니다.
원뿔형 그라디언트
원뿔형 그라데이션은 원형 차트를 그리는 방법과 유사하게 중심점을 중심으로 색상을 회전합니다. 다른 유형보다 나중에 CSS에 추가되었지만 이제는 전체 브라우저를 지원합니다.
기본 구문
background: conic-gradient(from angle at position, color-stop1, color-stop2, ...);
/* Basic conic gradient */
background: conic-gradient(#FF6B6B, #FFD93D, #6BCB77, #4D96FF, #FF6B6B);
/* Starting at 90 degrees */
background: conic-gradient(from 90deg, #FF6B6B, #FFD93D, #6BCB77);
원뿔형 그라디언트가 있는 원형 차트
원뿔형 그래디언트는 순수 CSS 원형 차트에 이상적입니다.
/* Pie chart: 40% red, 35% blue, 25% green */
background: conic-gradient(
#EF4444 0deg 144deg,
#3B82F6 144deg 270deg,
#22C55E 270deg 360deg
);
border-radius: 50%;
수학은 간단합니다. 백분율에 3.6을 곱하여 각도를 얻습니다(40% × 3.6 = 144deg).
원뿔형 그라디언트가 있는 색상환
모든 색상을 순환하는 완전한 원추형 그라데이션은 색상환을 재현합니다.
background: conic-gradient(
hsl(0, 100%, 50%),
hsl(60, 100%, 50%),
hsl(120, 100%, 50%),
hsl(180, 100%, 50%),
hsl(240, 100%, 50%),
hsl(300, 100%, 50%),
hsl(360, 100%, 50%)
);
border-radius: 50%;
체커보드와 스트라이프 패턴
repeating-conic-gradient() 변형은 기하학적 패턴을 생성합니다.
/* Checkerboard */
background: repeating-conic-gradient(#000 0% 25%, #fff 0% 50%);
background-size: 40px 40px;
반복되는 그라디언트
각 그라데이션 유형에는 정의된 패턴을 연속적으로 타일링하는 반복 변형이 있습니다.
/* Diagonal stripes */
background: repeating-linear-gradient(
45deg,
#F3F4F6,
#F3F4F6 10px,
#E5E7EB 10px,
#E5E7EB 20px
);
/* Concentric rings */
background: repeating-radial-gradient(
circle,
#3B82F6,
#3B82F6 10px,
transparent 10px,
transparent 30px
);
반복 그라디언트는 배경의 워터마크 스타일 대각선 또는 타겟팅 레티클 미학을 위한 동심원과 같은 텍스처 효과에 효율적입니다.
그라데이션의 투명성
그라디언트에서 transparent 또는 rgba() 값을 사용하면 페이드인 및 페이드아웃 효과가 생성됩니다.
/* Fade out at bottom (content below stays visible) */
background: linear-gradient(to bottom,
#1E3A8A 0%,
rgba(30, 58, 138, 0) 100%
);
/* Vignette overlay */
background: radial-gradient(ellipse at center,
transparent 60%,
rgba(0, 0, 0, 0.5) 100%
);
CSS의 transparent는 완전히 투명한 검정색인 rgba(0,0,0,0)입니다. 이는 색상 값에서 전환할 때 예상치 못한 회색 띠를 생성할 수 있습니다. 이를 방지하려면 완전히 투명한 색상 버전을 사용하세요.
/* Correct: transparent version of the blue */
background: linear-gradient(to right, #3B82F6, rgba(59, 130, 246, 0));
/* Incorrect: introduces gray banding */
background: linear-gradient(to right, #3B82F6, transparent);
여러 그라디언트 레이어링
background 속성은 쉼표로 구분된 여러 값을 허용합니다. 각 그래디언트는 이전 그래디언트 위에 쌓입니다.
/* Diagonal overlay on a solid color */
background:
linear-gradient(135deg, rgba(255,107,107,0.3) 0%, transparent 50%),
linear-gradient(to bottom, #1E3A8A, #2D6A9F);
/* Noise texture simulation with gradients */
background:
repeating-linear-gradient(
0deg,
transparent,
transparent 2px,
rgba(0,0,0,0.03) 2px,
rgba(0,0,0,0.03) 4px
),
linear-gradient(135deg, #667EEA, #764BA2);
계층화된 그라데이션은 여러 배경 이미지가 필요한 HTTP 요청을 줄이는 동시에 색상과 크기에 대한 완전한 CSS 제어를 제공합니다.
CSS 그라데이션 성능
그라데이션은 GPU에 의해 계산되며 일반적으로 효율적입니다. 그러나 성능에 민감한 상황에서는 다음과 같은 몇 가지 패턴을 피하는 것이 좋습니다.
- 애니메이션 그라데이션: CSS는 두 개의 서로 다른
background-image값 사이를 전환할 수 없습니다. 그라데이션에 애니메이션을 적용하려면 CSS 사용자 정의 속성(변수)을 변경하거나 JavaScript를 사용해야 합니다. 해결 방법은 더 큰 그라데이션에서background-position에 애니메이션을 적용하는 것입니다. - 복잡한 반복 패턴: 큰 요소의 매우 작은 반복 크기(2px 미만)는 브라우저가 수천 픽셀의 그라데이션을 계산하게 하므로 페인트 성능 문제가 발생할 수 있습니다.
- 애니메이션 중 그라디언트 배경에서
filter: blur()를 피하세요 - GPU 비용이 많이 들고 버벅거림이 발생합니다.
그라데이션 애니메이션의 경우 @property와 함께 CSS 사용자 정의 속성을 사용하면 하드웨어 가속 부드러운 전환이 제공됩니다.
@property --gradient-angle {
syntax: "<angle>";
initial-value: 0deg;
inherits: false;
}
.animated-gradient {
background: linear-gradient(var(--gradient-angle), #667EEA, #764BA2);
animation: rotate-gradient 4s linear infinite;
}
@keyframes rotate-gradient {
to { --gradient-angle: 360deg; }
}
그라디언트 생성기 사용
그라디언트를 직접 작성하는 것은 구문을 이해하는 데 유용하지만 그라디언트 생성기를 사용하면 프로세스 속도가 크게 빨라집니다. 다음을 수행할 수 있습니다.
- 시각적 색상 선택기를 사용하거나 16진수 코드를 직접 입력하여 시작 색상과 끝 색상을 선택하세요.
- 슬라이더 또는 숫자 입력으로 그라데이션 각도 설정
- 정확한 위치에 여러 색상 정지점 추가
- 다양한 요소 크기에 걸쳐 실시간으로 그라디언트를 미리 봅니다.
- 완성된 CSS를 한 번의 클릭으로 복사하세요
예를 들어 일몰 그라데이션을 만들려면 시작 색상으로 #FF6B6B, 50%에 #FFC300, 끝 색상으로 #FF3C00를 입력한 다음 각도를 135도로 설정합니다. 생성기는 스타일시트에 직접 붙여넣을 수 있는 즉시 사용 가능한 CSS를 생성합니다.
16진수 대신 HSL 또는 OKLCH 값으로 작업해야 하는 경우 생성기를 색상 변환기와 페어링하십시오. OKLCH와 같은 최신 색상 공간은 밝기 축이 모든 색상에 걸쳐 실제로 균일하기 때문에 인지적으로 더 균일한 그라데이션을 생성합니다.
실용적인 그라데이션 레시피
영웅 섹션 배경
background: linear-gradient(135deg, #667EEA 0%, #764BA2 100%);
SaaS 랜딩 페이지에 적합한 진한 보라색-파란색 대각선입니다.
카드 호버 효과
background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);
#F5F7FA에서 #C3CFE2까지 미묘한 연한 청회색 그라데이션.
네온 글로우 버튼
background: linear-gradient(to right, #11998e, #38ef7d);
box-shadow: 0 4px 15px rgba(56, 239, 125, 0.4);
다크 모드 표면
background: linear-gradient(145deg, #1E1E2E 0%, #2D2D44 100%);
다크 모드 카드 표면을 위한 은은한 진한 보라색-파란색입니다.
메쉬 그라디언트(레이어로 근사)
background:
radial-gradient(ellipse at 20% 20%, rgba(103,126,234,0.5), transparent 50%),
radial-gradient(ellipse at 80% 80%, rgba(118,75,162,0.5), transparent 50%),
radial-gradient(ellipse at 50% 50%, rgba(255,107,107,0.3), transparent 60%),
#1a1a2e;
주요 내용
- CSS는 직선 전환을 위한
linear-gradient(), 원형 또는 타원형 패턴을 위한radial-gradient(), 중심점을 중심으로 원형 차트 스타일 회전을 위한conic-gradient()의 세 가지 그라데이션 유형을 제공합니다. - 각 유형에는 그라데이션 패턴을 타일링하는
repeating-*변형이 있으며 텍스처 효과, 줄무늬 및 기하학적 패턴에 유용합니다. - 백분율이나 픽셀 위치가 포함된 여러 색상 정지점을 통해 전환이 발생하는 위치를 정밀하게 제어할 수 있습니다. 두 스톱에 대해 동일한 위치를 사용하면 블렌딩 없이 단단한 가장자리가 생성됩니다.
- 색상을 투명하게 변색시킬 때 회색 밴딩을 방지하려면 알파가 0인
rgba()(기본transparent키워드 아님)를 사용하세요. - 여러 그라디언트를 단일
background선언에 계층화할 수 있으며, 각 그라디언트는 이전 그라디언트 위에 배치됩니다. - 그라디언트 생성기를 사용하면 실시간 미리보기 및 원클릭 CSS 내보내기를 통해 복잡한 그라디언트를 시각적으로 구축할 수 있습니다.