초보자를 위한 CSS 변수 설명

발행: (2026년 1월 16일 오후 03:52 GMT+9)
4 min read
원문: Dev.to

Source: Dev.to

Introduction

CSS를 작성할 때 같은 색상, 글꼴 크기, 혹은 간격 값을 반복해서 사용하게 됩니다. 이런 반복은 코드 유지보수를 어렵게 만들죠. CSS 변수(또는 CSS 사용자 정의 속성)는 값을 한 곳에 저장하고 스타일시트 전체에서 재사용할 수 있게 해줌으로써 이 문제를 해결합니다.

이 가이드는 절대 초보자를 위한 아주 간단한 예시를 통해 CSS 변수를 단계별로 설명합니다.

What Are CSS Variables?

CSS 변수는 CSS에서 정의된 재사용 가능한 값입니다.

--main-color: blue;

여기서 --main-colorblue 값을 저장합니다.

Why Use CSS Variables?

CSS 변수는 코드를 다음과 같이 만들어 줍니다:

  • 읽기 쉬움
  • 업데이트가 빠름
  • 일관성 향상
  • 대규모 프로젝트에 적합

값을 한 곳에서 바꾸면 모든 곳에 자동으로 적용됩니다.

How to Define CSS Variables

Using the :root Selector

전역 변수를 정의할 때 가장 일반적이고 권장되는 방법은 :root 선택자를 사용하는 것입니다.

:root {
  --primary-color: #3498db;
  --spacing-unit: 1rem;
}

브라우저는 변수가 사용된 모든 위치에 저장된 값으로 대체합니다.

Local (Scoped) CSS Variables

변수는 특정 선택자 안에서도 정의할 수 있으며, 그 경우 범위가 제한됩니다.

.card {
  --card-bg: #fff;
  background-color: var(--card-bg);
}

이 변수는 .card 내부에서만 동작합니다.

Using Fallback Values

변수가 없을 경우를 대비해 대체값을 제공할 수 있습니다.

color: var(--secondary-color, black);

--secondary-color가 정의되지 않았다면 텍스트 색상은 black으로 대체됩니다.

Common Use Cases for CSS Variables

  • 테마 색상 (라이트 / 다크 모드)
  • 글꼴 크기
  • 간격 값
  • 재사용 가능한 레이아웃 치수
  • 디자인 시스템

Beginner Mistakes to Avoid

  • 변수를 정의할 때 앞에 --를 빼먹는 경우.
  • var() 함수를 사용하지 않고 변수를 사용하는 경우.
  • 불필요하게 많은 변수를 정의하는 경우.
  • 전역 값을 위해 :root를 사용하지 않는 경우.

Conclusion

CSS 변수는 강력하면서도 초보자 친화적인 기능으로, 더 깔끔하고 스마트하며 유지보수가 쉬운 CSS를 작성하도록 도와줍니다. 값을 중앙 집중화함으로써 중복을 줄이고 향후 업데이트를 손쉽게 할 수 있습니다.

Back to Blog

관련 글

더 보기 »

Netflix 클론 만들기

개요: 나는 프론트엔드 실력을 향상시키기 위해 Netflix Nepal 클론을 만들었습니다. 이 프로젝트는 Semantic HTML, CSS, Vanilla JavaScript를 사용하여 구축되었습니다. 그것은…

CSS @property: 고급 테마

웹 애플리케이션의 테마를 적용할 때, CSS 변수는 값을 관리하는 가장 간단하고 편리한 방법입니다. 이 변수들은 종종 전역 설정에 사용되지만, @pro...