← 전체 카테고리
07

비주얼 & 스타일

"조금만 더 예쁘게"를 수치로 옮기는 언어입니다. 패딩과 마진의 차이만 알아도 개발자와의 대화가 절반은 빨라집니다.

17개 용어17개 라이브 데모
느낌이 아니라 숫자로 말하기

"간격 좀 주세요"는 개발자가 못 알아듣습니다. 패딩인지 마진인지, 몇 px인지를 말해야 합니다. 이 카테고리는 감각을 수치로 번역하는 훈련입니다.

01

여백

Whitespace · 화이트스페이스 / 네거티브 스페이스

이런 상황에서 나옵니다

"여기 비어 보이는데 뭐라도 채워주세요" — 가장 자주 받는, 그리고 설득이 필요한 요청.

의도적으로 비워둔 공간입니다. 색이 흰색이어야 하는 건 아니고, 아무것도 없는 영역을 말합니다.

눈으로 보기 직접 눌러보세요
✗ 여백 부족
제목입니다
설명이 붙습니다
또 다른 설명
✓ 여백 충분
제목입니다
설명이 붙습니다
또 다른 설명
헷갈리는 지점

"빈 공간이 아까우니 뭐라도 채워주세요"가 가장 흔한 요구이자 가장 위험한 요구입니다. 여백은 남은 공간이 아니라 중요한 것을 돋보이게 만드는 도구입니다. 여백이 부족한 화면은 싸구려로 보입니다.

실무에서 쓸 때

설득할 때는 "예뻐서"가 아니라 "이 여백이 CTA 버튼을 눈에 띄게 만든다"처럼 목적으로 말하세요.

이렇게 요청하세요

이 여백은 의도적인 것입니다. 아래 CTA 버튼을 돋보이게 하려고 위아래를 비워둔 것이라, 여기를 채우면 버튼 주목도가 떨어집니다. 콘텐츠를 꼭 추가해야 한다면 다른 섹션에 넣는 걸 제안드립니다.

02

패딩 vs 마진

Padding vs Margin

이런 상황에서 나옵니다

"간격 좀 주세요" — 개발자가 어느 쪽인지 몰라 멈추는 순간.

패딩은 박스 안쪽 여백(테두리와 내용 사이), 마진은 박스 바깥 여백(다른 박스와의 거리)입니다.

눈으로 보기 직접 눌러보세요
내용

노란 영역 = 마진(박스 바깥) · 파란 영역 = 패딩(박스 안쪽) · 흰 부분 = 실제 내용

헷갈리는 지점

비전공자가 가장 먼저 헷갈리는 한 쌍입니다. "박스가 커지면 패딩, 박스끼리 멀어지면 마진"으로 외우세요. 개발자에게 "간격 좀 주세요"라고만 하면 어느 쪽인지 몰라 엉뚱한 결과가 나옵니다.

이렇게 요청하세요

카드 안쪽 여백(패딩)을 20px로 하고, 카드 사이 간격(마진/갭)은 16px로 해주세요. 박스가 커지는 게 아니라 박스끼리 벌어져야 합니다.

03

타이포그래피

Typography

이런 상황에서 나옵니다

"폰트 바꿔주세요" — 웹폰트 용량과 로딩 속도 얘기가 따라옵니다.

글자의 서체·크기·굵기·간격을 다루는 체계입니다. 웹 화면의 90% 이상은 글자이므로 가장 중요한 디자인 요소입니다.

눈으로 보기 직접 눌러보세요
Light 300 — 가벼운 본문
Medium 500 — 기본 본문
Bold 700 — 강조
Black 900 — 큰 제목

굵기 하나당 폰트 파일이 하나씩 늘어납니다.

헷갈리는 지점

웹 폰트를 쓰면 파일 용량과 로딩 속도에 영향을 줍니다. 굵기를 5종류 넣으면 그만큼 무거워집니다. 실제로 쓰는 굵기만 골라서 개발에 전달하세요. 한글 폰트는 영문보다 파일이 훨씬 큽니다.

이렇게 요청하세요

웹폰트는 Pretendard를 쓰고 굵기는 400·700 두 종류만 넣어주세요. 한글 폰트는 용량이 크니 사용하지 않는 굵기는 빼주세요. 폰트 로딩 전에도 글자가 보이게(font-display: swap) 해주세요.

04

위계

Hierarchy · 시각적 위계

이런 상황에서 나옵니다

"다 중요해 보여서 뭘 봐야 할지 모르겠어요"

중요도에 따라 크기·굵기·색으로 강약을 주는 것입니다. 사용자가 무엇부터 읽어야 할지 알려줍니다.

눈으로 보기 직접 눌러보세요
✗ 위계 없음
여름 정기 세일
최대 50% 할인
7월 30일까지
✓ 위계 있음
여름 정기 세일
최대 50% 할인
7월 30일까지
헷갈리는 지점

다 중요하다고 다 크게 만들면 아무것도 중요하지 않게 됩니다. 화면마다 "가장 중요한 것 하나"를 정하고 나머지를 그보다 약하게 만드는 게 원칙입니다.

이렇게 요청하세요

이 섹션에서 가장 중요한 것 하나만 정해주세요. 그것만 크고 진하게 하고 나머지는 한 단계씩 낮추겠습니다. 지금은 모두 같은 크기라 시선이 어디로 갈지 정해지지 않습니다.

05

타입 스케일

Type Scale

이런 상황에서 나옵니다

"시안마다 글자 크기가 달라요" — 15·16·17px이 섞여 나올 때.

제목부터 본문까지 글자 크기의 단계를 미리 정해둔 표입니다. 아무 크기나 쓰지 않고 정해진 값만 씁니다.

눈으로 보기 직접 눌러보세요
H1 · 24px
H2 · 19px
H3 · 16px
Body · 14px
Caption · 12px
헷갈리는 지점

스케일이 없으면 시안마다 15px, 16px, 17px이 섞여 나오고 개발자는 그걸 다 따라 만들어야 합니다. 6~8단계로 제한해두면 디자인도 개발도 훨씬 빨라집니다.

이렇게 요청하세요

타입 스케일을 6단계로 정해주세요 — H1 32 / H2 24 / H3 19 / Body 15 / Small 13 / Caption 11. 이 외의 크기는 쓰지 말아주세요.

06

행간 · 라인 하이트

Line Height · 줄 간격

이런 상황에서 나옵니다

"글이 답답해 보여요" — 한글 본문에서 특히.

줄과 줄 사이의 간격입니다. 글자 크기의 배수로 지정합니다.

눈으로 보기 직접 눌러보세요
1.15 — 답답함
사용자 경험 디자인은 사용자가 제품을 사용하며 느끼는 모든 것을 설계하는 일입니다.
1.7 — 읽기 편함
사용자 경험 디자인은 사용자가 제품을 사용하며 느끼는 모든 것을 설계하는 일입니다.
헷갈리는 지점

한글 본문은 글자 크기의 1.5~1.7배가 읽기 편합니다. 영문보다 살짝 넓게 잡는 게 좋습니다. 행간이 좁으면 답답하고, 너무 넓으면 줄이 흩어져 보입니다. 제목은 오히려 좁게(1.2~1.3) 잡습니다.

이렇게 요청하세요

본문 행간을 1.7로 올려주세요. 한글은 영문보다 넓은 행간이 읽기 편합니다. 제목은 반대로 1.25로 좁혀주세요.

07

자간 · 레터 스페이싱

Letter Spacing

이런 상황에서 나옵니다

"제목이 좀 벌어져 보여요" — 한글 큰 제목에서.

글자와 글자 사이의 간격입니다.

눈으로 보기 직접 눌러보세요
자간 0 — 기본 제목
자간 -3.5% — 단정한 제목
SMALL CAPS · 자간 넓힘
헷갈리는 지점

한글은 큰 제목일수록 자간을 살짝 좁히면(-2% 정도) 훨씬 단정해 보입니다. 반대로 아주 작은 글씨나 대문자 영문은 자간을 넓혀야 읽힙니다. 본문 자간은 건드리지 않는 게 안전합니다.

이렇게 요청하세요

제목(24px 이상)에 자간 -2%를 적용해주세요. 본문은 기본값 그대로 두고, 영문 대문자 라벨에는 자간 +10%를 주세요.

08

컬러 팔레트

Color Palette

이런 상황에서 나옵니다

"브랜드 색이 이거예요" — 색 하나만 받았을 때 부족하다고 말해야 합니다.

프로젝트에서 쓸 색을 미리 정해둔 모음입니다.

눈으로 보기 직접 눌러보세요
50200400600900
헷갈리는 지점

색은 단계별로 준비해야 합니다. 주색 하나만 정하면 호버·비활성·배경에 쓸 색이 없어서 개발자가 임의로 밝기를 조절합니다. 보통 한 색당 9~10단계를 만듭니다.

이렇게 요청하세요

브랜드 주색 하나만으로는 부족합니다. 호버·비활성·배경·테두리에 쓸 색이 필요하니 주색 기준으로 밝기 9단계(50~900) 팔레트를 만들어주세요.

09

프라이머리 · 시맨틱 컬러

Primary · Semantic Color

이런 상황에서 나옵니다

"브랜드 색이 빨강이라 성공 메시지도 빨강으로 해주세요" — 말려야 하는 요청.

프라이머리는 브랜드를 대표하는 주색, 시맨틱 컬러는 의미가 정해진 색(성공=초록, 경고=노랑, 오류=빨강)입니다.

눈으로 보기 직접 눌러보세요
성공 — 저장되었습니다
경고 — 곧 만료됩니다
오류 — 저장하지 못했습니다
헷갈리는 지점

시맨틱 컬러는 사용자의 학습된 기대를 따라야 합니다. 브랜드 색이 빨강이라고 "성공" 메시지를 빨강으로 만들면 사용자는 실패한 줄 압니다.

이렇게 요청하세요

브랜드 색과 별개로 시맨틱 컬러를 따로 정의해주세요 — 성공=초록, 경고=노랑, 오류=빨강. 브랜드 색이 빨강이어도 성공 메시지는 초록으로 해야 사용자가 오해하지 않습니다.

10

명도 대비

Contrast Ratio

이런 상황에서 나옵니다

"회색이 너무 연한데요" — 그리고 공공 프로젝트에서는 법적 검수 항목.

글자와 배경의 밝기 차이 비율입니다. 1:1(같은 색)부터 21:1(검정/흰색)까지 있습니다.

눈으로 보기 직접 눌러보세요
16.1:1 — 충분합니다 ✓
5.0:1 — 기준을 넘습니다 ✓
1.7:1 — 기준 미달입니다 ✗

세 번째 줄, 지금 읽기 힘드시죠? 그게 대비 부족입니다.

헷갈리는 지점

본문은 4.5:1 이상, 큰 글씨는 3:1 이상이 접근성 최소 기준(WCAG AA)입니다. 회색 글씨가 세련돼 보인다고 연하게 만들면 밝은 야외에서 아예 안 보입니다. 공공 프로젝트는 이게 법적 검수 항목입니다.

이렇게 요청하세요

모든 텍스트의 명도 대비를 WCAG AA 기준(본문 4.5:1, 큰 글씨 3:1) 이상으로 맞춰주세요. 현재 연회색 보조 텍스트가 기준에 미달합니다.

11

다크 모드

Dark Mode

이런 상황에서 나옵니다

"다크 모드도 되게 해주세요" — 팔레트 한 벌을 더 만드는 작업입니다.

어두운 배경 기반의 테마입니다. 눈부심을 줄이고 배터리를 아낍니다.

눈으로 보기 직접 눌러보세요
라이트
카드 영역
다크
카드 영역

이 사이트도 기기 설정에 따라 자동으로 바뀝니다.

헷갈리는 지점

색을 그대로 반전시키면 안 됩니다. 다크 모드에서는 순수한 검정(#000)보다 살짝 밝은 회색을 쓰고, 그림자 대신 밝기 차이로 층을 표현합니다. 결국 팔레트를 한 벌 더 만드는 일이므로 일정과 견적에 반영해야 합니다.

이렇게 요청하세요

다크 모드를 지원해주세요. 색 반전이 아니라 별도 팔레트가 필요합니다. 배경은 순검정 대신 #14141b 계열을 쓰고, 그림자 대신 테두리와 밝기 차이로 층을 구분해주세요. OS 설정을 따라가되 수동 전환 버튼도 넣어주세요.

12

엘리베이션 · 그림자

Elevation · Shadow

이런 상황에서 나옵니다

"그림자 좀 넣어주세요" — 단계를 정해두지 않으면 제각각이 됩니다.

요소가 얼마나 떠 있는지를 그림자로 표현한 것입니다. 높이 단계를 정해두고 씁니다.

눈으로 보기 직접 눌러보세요
0
1
2
3
헷갈리는 지점

그림자를 아무렇게나 쓰면 화면이 지저분해집니다. 0/1/2/3 같은 단계를 정해두고 "카드는 1단계, 모달은 3단계"처럼 규칙으로 관리하세요. 다크 모드에서는 그림자가 잘 안 보여서 테두리나 밝기로 대체합니다.

이렇게 요청하세요

그림자를 4단계로 정의해주세요 — 0(평면) / 1(카드) / 2(드롭다운) / 3(모달). 각 컴포넌트에 어느 단계를 쓸지 문서로 정해주세요. 다크 모드에서는 테두리로 대체해주세요.

13

보더 레디우스

Border Radius · 모서리 둥글기

이런 상황에서 나옵니다

"모서리 좀 더 둥글게" — 값이 제각각이 되기 쉬운 항목.

박스 모서리를 얼마나 둥글게 할지 정하는 값입니다.

눈으로 보기 직접 눌러보세요
0
5
12
999
헷갈리는 지점

값이 제각각이면 조잡해 보입니다. 4·8·12·999px(완전 둥근) 정도로 단계를 정해두세요. 그리고 박스 안에 박스가 있을 때는 안쪽 둥글기를 바깥보다 작게 해야 자연스럽습니다.

이렇게 요청하세요

보더 레디우스를 4단계로 통일해주세요 — sm 6px / md 10px / lg 16px / full 999px. 중첩된 박스는 안쪽을 바깥보다 4px 작게 해주세요.

14

오퍼시티 · 투명도

Opacity

이런 상황에서 나옵니다

"글자를 좀 연하게 해주세요" — 오퍼시티로 하면 대비가 무너집니다.

요소가 얼마나 비쳐 보이는지를 나타내는 값입니다. 0이면 완전히 투명, 1이면 불투명합니다.

눈으로 보기 직접 눌러보세요
1.00.60.30.1
헷갈리는 지점

글자를 흐리게 만들 때 오퍼시티를 쓰면 대비가 무너집니다. 회색 글자가 필요하면 오퍼시티를 낮추지 말고 회색 자체를 색으로 지정하는 게 맞습니다. 오퍼시티는 배경 이미지 위 딤 처리 같은 데 쓰세요.

이렇게 요청하세요

보조 텍스트를 오퍼시티로 흐리게 하지 말고 회색 값을 직접 지정해주세요. 오퍼시티를 쓰면 배경에 따라 대비가 달라져 접근성 기준을 맞추기 어렵습니다.

15

아이콘 세트

Icon Set

이런 상황에서 나옵니다

"아이콘 몇 개만 더 추가해주세요" — 다른 세트에서 가져오면 티가 납니다.

같은 스타일로 만들어진 아이콘 묶음입니다. 굵기·모서리 처리·크기 기준이 통일되어 있습니다.

눈으로 보기 직접 눌러보세요
🏠🔍🛒👤

아이콘도 의미가 명확한 것만 글자 없이 쓸 수 있습니다. 나머지는 라벨을 붙이세요.

헷갈리는 지점

여러 세트를 섞으면 티가 확 납니다. 선 굵기가 다른 아이콘이 나란히 있으면 조잡해 보입니다. 프로젝트 시작할 때 세트 하나를 정하고, 없는 아이콘은 그 스타일에 맞춰 그리세요.

이렇게 요청하세요

아이콘은 한 세트(예: Lucide)로 통일해주세요. 그 세트에 없는 아이콘은 다른 데서 가져오지 말고 같은 선 굵기(1.5px)와 24px 그리드에 맞춰 새로 그려주세요.

16

SVG vs 비트맵

SVG vs Bitmap (PNG/JPG)

이런 상황에서 나옵니다

"로고가 흐릿해요" — 로고를 PNG로 넘겼을 때.

SVG는 수식으로 그린 벡터라 아무리 확대해도 안 깨집니다. PNG/JPG는 픽셀 그림이라 확대하면 깨집니다.

눈으로 보기 직접 눌러보세요
SVG (벡터)

확대해도 선명

PNG (비트맵)

확대하면 흐려짐

헷갈리는 지점

로고·아이콘은 반드시 SVG로 넘기세요. 사진은 JPG, 투명 배경이 필요한 이미지는 PNG입니다. 요즘은 WebP가 용량이 훨씬 작아서 사진에 많이 씁니다.

이렇게 요청하세요

로고와 아이콘은 SVG로 넘기겠습니다. 사진은 WebP를 우선 쓰고 지원 안 되는 브라우저용으로 JPG를 대체 제공해주세요.

17

@2x · @3x

Image Scale Factor · 해상도 배수

이런 상황에서 나옵니다

"이미지가 흐릿하게 나와요" — 고해상도 화면에서.

고해상도 화면(레티나 등)을 위해 이미지를 2배·3배 크기로 준비하는 것입니다.

눈으로 보기 직접 눌러보세요
@1x
100×100
@2x
200×200
@3x
300×300

화면에서는 모두 같은 크기로 보이지만, 파일 자체는 더 큽니다.

헷갈리는 지점

디자이너가 배수 이미지를 안 뽑아주면 개발자는 못 씁니다. 100×100으로 보여줄 이미지는 200×200(@2x)로 내보내야 고해상도 화면에서 선명합니다. 핸드오프 체크리스트에 반드시 넣으세요.

이렇게 요청하세요

이미지 리소스를 @1x·@2x·@3x 세 배수로 내보내드리겠습니다. 파일명은 이미지명@2x.png 형식으로 통일하겠습니다.