0Pricing
React Academy · 강의

Tailwind 토큰, CSS 변수와 CSS-in-JS

생성된 토큰을 Tailwind 구성, CSS 사용자 지정 속성, Emotion 또는 styled-components 테마에 통합합니다.

Tailwind 토큰, CSS 변수와 CSS-in-JS은(는) CoddyKit의 무료 React Academy 강의입니다. 이것은 4개 중 3번째 강의입니다. 아래에서 전체 강의를 무료로 읽을 수 있으며, 내장 코드 에디터와 24/7 AI 튜터와 함께 브라우저에서 직접 실습할 수 있습니다. 이 강의는 React Academy 학습 경로의 일부이며, 진행 상황이 웹과 CoddyKit 앱에 동기화됩니다. React Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

CSS 사용자 지정 속성 출력

스타일 딕셔너리의 CSS 플랫폼 출력은 CSS 사용자 지정 속성으로 구성된 파일을 생성합니다: --color-primary-500: #3b82f6; --spacing-4: 16px; 등입니다. 이러한 변수는 :root에 정의되어 전역에서 사용할 수 있습니다. 이는 애플리케이션에서 모든 토큰을 사용하는 기반입니다.

토큰을 전역으로 가져오기

생성된 CSS 토큰 파일을 전역 스타일시트 또는 루트 레이아웃 구성 요소에서 가져옵니다: @import './tokens/tokens.css'. Next.js에서는 app/layout.tsx 또는 styles/globals.css에서 가져옵니다. 가져온 후 애플리케이션의 모든 CSS 규칙과 구성 요소에서 사용자 지정 속성을 참조할 수 있습니다.

CSS에서 토큰 사용하기

구성 요소 스타일시트나 CSS 모듈에서 CSS 변수를 참조합니다: background-color: var(--color-primary-500); 및 padding: var(--spacing-4);. JSON 원본에서 토큰 값이 변경되면 스타일 딕셔너리를 다시 빌드할 때 CSS 파일이 업데이트되고, 해당 변수를 사용하는 모든 구성 요소에 새 값이 자동으로 반영됩니다.

CSS 변수를 사용한 런타임 테마 적용

CSS 사용자 지정 속성을 사용하면 런타임에 테마를 전환할 수 있습니다. 다크 모드에서는 테마 선택자 아래에서 토큰 값을 재정의합니다: [data-theme="dark"] { --color-background: #1a1a2a; --color-text: #f0f0f0; }. document.documentElement.setAttribute('data-theme', 'dark')를 설정하면 다시 로드하거나 다시 빌드하지 않아도 모든 토큰 값이 즉시 전환됩니다.

테일윈드 설정 확장

토큰 값을 사용하도록 tailwind.config.js에서 테일윈드의 테마를 확장합니다: theme: { extend: { colors: { primary: { 500: tokenOutput.color.primary[500] } } } }. 스타일 딕셔너리의 JS 출력을 테일윈드 설정으로 가져오면 테일윈드 클래스(bg-primary-500)가 항상 신뢰할 수 있는 토큰 값을 사용하도록 할 수 있습니다.

CSS 변수 값을 사용하는 테일윈드

런타임에 전환할 수 있는 테마를 테일윈드에서 사용하려면 색상이 CSS 변수를 참조하도록 설정합니다: 'primary': 'rgb(var(--color-primary-rgb) / <alpha-value>)'. 이를 위해 CSS 변수에는 rgb() 래퍼 없이 RGB 구성 요소가 저장되어야 합니다(--color-primary-rgb: 59 130 246). 그러면 테일윈드가 불투명도 유틸리티를 자동으로 처리합니다.

이모션 및 스타일드 컴포넌트 통합

CSS-in-JS 라이브러리는 JavaScript 테마 객체를 사용합니다. 스타일 딕셔너리의 JS 출력을 테마 공급자 값으로 전달합니다: <ThemeProvider theme={tokens}>. 구성 요소는 const theme = useTheme() 및 theme.color.primary[500]를 통해 토큰에 접근합니다. 스타일 딕셔너리는 타입이 지정된 토큰 객체를 생성하고, 테마 공급자가 이를 배포합니다.

린트 규칙으로 토큰 사용 강제

stylelint-no-hardcoded-colors 플러그인과 사용자 지정 린트 규칙을 사용하면 스타일시트나 구성 요소 파일에 하드코딩된 16진수 값이 나타나지 않도록 강제할 수 있습니다. 개발자가 color: var(--color-primary-500) 대신 color: #3b82f6을 작성하면 린터가 이를 오류로 표시합니다. 이렇게 하면 토큰 시스템이 유일한 색상 소스가 됩니다.

동적 토큰을 위한 테일윈드 허용 목록

런타임에 토큰 이름으로 테일윈드 클래스 이름을 동적으로 구성하면, 소스에 정적 문자열로 나타나지 않는다는 이유로 테일윈드의 제거 과정에서 해당 클래스가 삭제될 수 있습니다. tailwind.config.js의 safelist에 동적 클래스 패턴을 추가합니다: safelist: [{ pattern: /bg-primary-/ }].

피그마 토큰 플러그인 작업 흐름

피그마 토큰 플러그인은 피그마 토큰 값을 스타일 딕셔너리 JSON 형식으로 직접 내보냅니다. 작업 흐름은 다음과 같습니다. 디자이너가 피그마 변수에서 색상을 업데이트하고, 플러그인으로 내보내고, 업데이트된 JSON을 커밋하면, 사전 빌드 스크립트가 스타일 딕셔너리를 실행하고, 업데이트된 CSS 및 JS 출력이 리액트 앱에서 사용됩니다. 디자인과 코드가 동기화된 상태로 유지됩니다.

범위가 지정된 토큰 재정의

CSS 사용자 지정 속성은 자신이 정의된 요소와 그 하위 요소에 적용되는 범위로 제한됩니다. 이를 통해 구성 요소 수준의 테마를 재정의할 수 있습니다. 카드 구성 요소가 루트 요소에 --color-background: var(--color-surface-elevated)를 설정하면 모든 하위 요소가 속성을 여러 단계로 전달하지 않아도 높아진 표면 색상을 사용합니다.

토큰에 CSS 사용자 지정 속성과 테일윈드 사용하기

정적인 테일윈드 값보다 디자인 토큰에 CSS 사용자 지정 속성(변수)을 사용할 때의 핵심 장점은 무엇입니까?

레슨 요약

스타일 딕셔너리는 전역으로 가져올 수 있는 CSS 사용자 지정 속성과 테일윈드 및 CSS-in-JS 통합에 사용할 JS 객체를 출력합니다. CSS 변수는 [data-theme] 재정의를 통해 런타임 테마 전환을 지원합니다. 테일윈드는 JS 출력의 토큰 값으로 설정을 확장하며, 불투명도를 고려한 테마를 사용하려면 RGB CSS 변수를 참조하도록 테일윈드를 설정합니다. 린트 규칙은 색상을 토큰으로만 사용하도록 강제하여 코드베이스에서 하드코딩된 값을 제거합니다.

자주 묻는 질문

“Tailwind 토큰, CSS 변수와 CSS-in-JS” 강의는 무료인가요?

네 — “Tailwind 토큰, CSS 변수와 CSS-in-JS” 전체 내용을 이 웹사이트에서 무료로 읽을 수 있습니다. 인터랙티브하게 실습하려면(내장 코드 에디터와 24/7 AI 튜터), CoddyKit PRO로 업그레이드하면 React Academy 강의 전체를 잠금 해제할 수 있습니다. React Academy 강의에는 총 4개의 강의가 포함되어 있습니다.

“Tailwind 토큰, CSS 변수와 CSS-in-JS”에서 뭘 배우나요?

생성된 토큰을 Tailwind 구성, CSS 사용자 지정 속성, Emotion 또는 styled-components 테마에 통합합니다. 브라우저에서 직접 실행하는 실습 코드로 React Academy을(를) 배우며, 24/7 AI 튜터가 강의를 진행하면서 질문에 답변해줍니다.

React Academy을(를) 시작하는 데 경험이 필요한가요?

사전 경험은 필요하지 않습니다. CoddyKit의 React Academy은(는) 초급자부터 고급 학습자까지를 위해 구성되어 있으므로, 여기서 시작하거나 처음부터 시작할 수 있으며 자신의 속도대로 진행할 수 있습니다. 이것은 4개 중 3번째 강의입니다.

“Tailwind 토큰, CSS 변수와 CSS-in-JS” 강의는 얼마나 걸리나요?

대부분의 CoddyKit 강의는 약 5~10분이 소요됩니다. 각 강의는 간결하고 인터랙티브하여 꾸준한 진행이 가능하며, 웹과 앱에서 중단한 부분부터 바로 시작할 수 있습니다.

이 React Academy 강의에서 코드를 작성하고 실행할 수 있나요?

네. 모든 React Academy 강의에는 내장 코드 에디터가 포함되어 있으므로, 브라우저에서 바로 실제 코드를 작성하고 실행한 후 즉시 AI 피드백을 받을 수 있습니다 — 로컬 설정이 필요 없습니다.

이 강의의 모든 강의

  1. 디자인 토큰이란 무엇이며 왜 중요한가
  2. Style Dictionary: 토큰 변환 및 생성
  3. Tailwind 토큰, CSS 변수와 CSS-in-JS
  4. 다중 테마 및 다중 브랜드 토큰 아키텍처
← React Academy(으)로 돌아가기