CSS 그라디언트 생성기

선형·원형·원뿔 그라디언트를 눈으로 보며 만들고 CSS 코드를 복사합니다. 프리셋 15종·랜덤 생성 지원.

색상 정지점 (color stop)
색상 HEX 위치 % 투명도 % 삭제

정지점은 2개 이상이어야 합니다. 위치 순서는 자동으로 정렬되어 CSS에 반영됩니다.

프리셋

CSS 그라디언트 생성기란?

CSS 그라디언트는 이미지 파일 없이 코드만으로 배경에 색의 흐름을 만드는 기능입니다. 이미지가 아니라 텍스트 한 줄이라 용량이 0에 가깝고, 어떤 해상도에서도 깨지지 않으며, 색만 바꾸면 즉시 다른 분위기가 됩니다. 이 도구는 선형(linear)·원형(radial)·원뿔(conic) 세 가지 방식과 각도, 색상 정지점의 위치·투명도를 조절하면 큰 미리보기에 곧바로 반영되고, 그대로 붙여넣을 수 있는 CSS를 만들어 줍니다. 색을 고르기 막막할 때는 프리셋 15종을 눌러 보거나 랜덤 버튼으로 조화로운 색 조합을 뽑아 출발점으로 삼을 수 있습니다.

사용 방법

  1. 선형 / 원형 / 원뿔 중 그라디언트 종류를 고릅니다. 배너·버튼 배경이면 선형, 스포트라이트 느낌이면 원형, 원형 차트나 무지개 링이면 원뿔이 어울립니다.
  2. 색상 정지점 표에서 색을 고르고 위치(%)를 조절합니다. "정지점 추가"로 세 가지 색 이상도 만들 수 있습니다.
  3. 선형이면 각도를, 원형·원뿔이면 중심 위치를 조절하며 위쪽 미리보기를 확인합니다.
  4. 아래 CSS 코드를 복사해 스타일시트에 붙여넣습니다. 프리셋 칩이나 랜덤 버튼으로 시작해 다듬어도 됩니다.

CSS 그라디언트 생성기 사용 가이드

실제 작업에서 이 도구를 어떻게 쓰는지, 무엇을 조심해야 하는지 정리했습니다.

왜 내 그라디언트는 중간이 탁해질까

두 색을 섞으면 그 사이 색이 지저분한 회색빛으로 죽어 버리는 일이 흔합니다. 파랑과 주황을 이으면 중간이 진흙색이 됩니다. 이건 취향 문제가 아니라 색상환에서 두 색이 얼마나 떨어져 있는지의 문제입니다.

CSS 그라디언트는 기본적으로 두 색을 RGB 공간에서 직선으로 잇습니다. 색상환에서 마주 보는 색(보색)끼리 이으면 그 직선이 채도가 낮은 회색 지점을 지나갑니다. 그래서 중간이 탁해집니다.

  • 색상환에서 30~60도 이내로 떨어진 색끼리 이으세요. 파랑-보라, 주황-분홍처럼요. 이 도구의 랜덤 버튼이 정확히 이 방식으로 색을 뽑습니다.
  • 보색을 꼭 써야 한다면 중간에 정지점을 하나 더 넣어 밝은 색을 경유시키세요. 파랑 → 청록 → 노랑처럼 색상환을 따라 돌아가면 탁해지지 않습니다.
  • 명도(밝기)도 함께 움직이면 훨씬 자연스럽습니다. 같은 밝기의 두 색은 경계가 흐릿하게 뭉개져 보입니다.
  • 채도가 너무 높은 두 색을 붙이면 경계에 없던 색 띠가 보이기도 합니다. 채도를 조금 낮추면 사라집니다.
랜덤 버튼은 인접 색상(analogous) 계열에서 색을 뽑고 밝기를 조금씩 어긋나게 줍니다. 완전 무작위로 RGB를 뽑으면 열에 아홉은 탁한 결과가 나오기 때문입니다. 마음에 드는 게 나올 때까지 여러 번 눌러 출발점으로 삼고 색을 다듬는 게 가장 빠릅니다.

선형·원형·원뿔, 무엇을 언제 쓰나

원뿔(conic)은 시작 각도를 정할 수 있습니다. 이 도구에서 원뿔을 고르면 각도 슬라이더가 "from Xdeg"로 동작합니다. 각도 0도는 위쪽(12시)에서 시작해 시계 방향으로 돕니다.

원형(radial)에서는 각도가 의미가 없으므로 슬라이더가 숨겨지고, 대신 모양(원/타원)과 중심 위치를 고릅니다. 중심을 "위"로 두면 위에서 빛이 내려오는 느낌이 납니다.

종류색이 퍼지는 방식실무 용도
선형 (linear)정해진 각도로 한 방향배너 배경, 버튼, 헤더, 카드. 대부분 이걸 씁니다.
원형 (radial)한 점에서 사방으로스포트라이트, 주목 효과, 화면 가장자리 어둡게(비네팅).
원뿔 (conic)중심을 축으로 회전원형 차트, 색상환, 회전 로딩 표시, 무지개 링.
linear-gradient의 각도는 직관과 반대일 수 있습니다. 0deg는 아래에서 위로, 90deg는 왼쪽에서 오른쪽입니다. 시계 방향으로 커지며 180deg가 위에서 아래입니다. 흔히 쓰는 대각선은 135deg 입니다.

사진 위 글자를 살리는 오버레이

실무에서 그라디언트가 가장 많이 쓰이는 곳은 사실 예쁜 배경이 아니라 사진 위 텍스트 가독성 확보입니다. 히어로 이미지 위에 흰 글자를 얹으면 사진의 밝은 부분에서 글자가 사라집니다. 그렇다고 사진 전체를 어둡게 깔면 사진이 죽습니다.

해법은 글자가 있는 쪽만 어둡게 덮는 투명도 그라디언트입니다. 정지점 하나의 투명도를 0으로 두면 그쪽은 사진이 그대로 보이고, 반대쪽만 자연스럽게 어두워집니다.

  1. 정지점 2개를 모두 검정(#000000)으로 둡니다.
  2. 첫 정지점의 투명도를 0으로, 위치를 40% 정도로 둡니다.
  3. 두 번째 정지점의 투명도를 70~80%, 위치를 100%로 둡니다.
  4. 각도를 180deg(위에서 아래)로 맞추고 CSS를 복사합니다.
css
.hero {
  position: relative;
  background: url(photo.jpg) center/cover;
}
/* 아래쪽만 어둡게 — 글자가 아래에 있을 때 */
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg,
    rgba(0, 0, 0, 0) 40%,
    rgba(0, 0, 0, 0.75) 100%);
}
.hero h1 { position: relative; z-index: 1; color: #fff; }
투명도 0인 정지점의 색은 반드시 반대쪽 정지점과 같은 색으로 두세요. 흰색 투명에서 검정으로 이으면 중간이 뿌옇게 뜹니다. 눈에 안 보이는 색이어도 섞이는 과정에는 참여하기 때문입니다. 이 도구는 색과 투명도를 따로 조절하므로, 두 정지점의 색을 같게 두고 투명도만 0과 80으로 주면 됩니다.

반복(repeating)으로 줄무늬 만들기

반복 옵션을 켰는데 아무 변화가 없다고 느끼는 경우가 많습니다. 반복은 "정지점이 끝나는 지점부터 다시 처음"을 되풀이하는 기능이라, 정지점이 0~100%에 넓게 퍼져 있으면 화면을 딱 한 번 채우고 끝나 반복할 자리가 없습니다.

줄무늬를 만들려면 정지점을 좁은 범위에 몰아야 합니다. 그리고 같은 위치에 색을 두 번 두면(예: 50%에 두 색) 그라데이션 없이 딱 끊긴 줄이 됩니다.

css
/* 사선 줄무늬 — 경계를 같은 위치에 두면 딱 떨어진다 */
background: repeating-linear-gradient(45deg,
  #4f46e5 0px, #4f46e5 10px,
  #c7d2fe 10px, #c7d2fe 20px);
이 도구는 정지점이 60% 넘게 퍼진 상태에서 반복을 켜면 "반복 효과가 보이지 않는다"고 알려 줍니다. 프리셋의 "사선 줄무늬"를 눌러 정지점 배치를 확인해 보세요. 이 도구는 위치를 %로만 다루므로, px 단위의 정밀한 줄무늬가 필요하면 복사한 코드에서 % 를 px 로 바꿔 쓰면 됩니다.

실무에서 조심할 것

  • 텍스트 대비 — 그라디언트 배경 위의 글자는 밝은 쪽 끝에서 안 보이기 쉽습니다. 가장 밝은 정지점 기준으로 대비를 확인하세요.
  • 큰 면적의 부드러운 그라디언트는 계단처럼 색 띠(밴딩)가 보일 수 있습니다. 특히 어두운 색끼리 이을 때 두드러집니다. 정지점을 하나 더 넣거나 아주 옅은 노이즈를 얹으면 완화됩니다.
  • 버튼에 쓸 때는 hover 상태를 잊지 마세요. 그라디언트는 transition으로 부드럽게 바뀌지 않습니다. 색이 툭 바뀝니다.
  • 다크 모드에서 밝은 그라디언트는 눈이 부십니다. 채도와 밝기를 낮춘 별도 값을 준비하세요.
background 속성에 그라디언트를 넣으면 그 요소의 background-color 를 덮어씁니다. CSS가 늦게 로드되는 순간이나 그라디언트 선언에 오타가 있을 때 배경이 비어 보일 수 있으므로, background-color 를 먼저 선언하고 그 아래에 그라디언트를 두는 방식이 안전합니다.

자주 묻는 질문

반복(repeating) 옵션은 언제 쓰나요?

줄무늬나 사선 패턴을 만들 때 씁니다. 정지점 위치를 0~10% 처럼 좁은 범위에 몰아 두고 반복을 켜면 그 구간이 계속 이어져 스트라이프 배경이 됩니다. 정지점이 0~100%에 넓게 퍼져 있으면 반복을 켜도 티가 나지 않습니다.

각도 0도는 어느 방향인가요?

CSS의 linear-gradient에서 0deg는 아래에서 위로, 90deg는 왼쪽에서 오른쪽으로 진행합니다. 시계 방향으로 커지며 180deg는 위에서 아래입니다. 흔히 쓰는 대각선 느낌은 135deg 입니다.

투명도(알파)를 쓰면 뭐가 좋나요?

사진 위에 글자를 얹을 때 아래쪽만 어둡게 깔아 주는 오버레이를 만들 수 있습니다. 한쪽 정지점의 투명도를 0으로 두면 자연스럽게 사라지는 그라디언트가 되어 이미지 위 텍스트 가독성을 높입니다.

만든 값이 서버로 전송되나요?

아니요. 미리보기와 CSS 코드 생성은 전부 브라우저 안에서만 이뤄지며 어떤 값도 서버로 전송되거나 저장되지 않습니다.