Theming Terms

이 문서가 답하는 질문: 다크모드·멀티 브랜드·RTL을 다룰 때 등장하는 어휘가 정확히 무엇을 가리키는가? 한 줄 답 (Pyramid Top): 이 카테고리는 “같은 컴포넌트가 컨텍스트에 따라 다른 값을 갖게 만드는” 어휘 — data-theme·prefers-* 미디어 쿼리·logical property가 핵심.


카테고리 개요

키워드한 줄 정의
Dark Mode어두운 배경 테마
data-themeDOM 속성으로 테마 전환
color-scheme폼·스크롤바의 light/dark 자동 적응
Multi-brand한 코드베이스로 여러 브랜드
RTL오른쪽→왼쪽 텍스트 방향

본문 (알파벳 순)

Brand (브랜드)

카테고리: Theming 별칭: brand theme

한 디자인 시스템이 여러 브랜드를 지원할 때, 각 브랜드의 색·로고·타이포 묶음. semantic 토큰의 상위 layer로 표현.

관련: Multi-brand Theming, Token Set


color-scheme (CSS property)

카테고리: Theming 별칭: meta color-scheme

color-scheme: light dark; — 폼 컨트롤·스크롤바·기본 배경의 light/dark 자동 적응 신호. <meta name="color-scheme">도 동일 효과.

관련: Dark Mode, light-dark(), prefers-color-scheme 참고: 06-theming


Dark Mode

카테고리: Theming 별칭: dark theme

어두운 배경의 테마. 단순 색 반전이 아니라 그림자·대비·일러스트 톤을 함께 재조정해야 한다. semantic 토큰의 대표적 사용처.

관련: color-scheme, data-theme, light-dark() 참고: 06-theming


data-theme

카테고리: Theming 별칭: theme data attribute

<html data-theme="dark">. CSS는 [data-theme="dark"] { ... }로 분기. JS가 자유롭게 토글 가능 — 시스템 설정과 사용자 선택을 모두 반영하는 표준 방법.

관련: Dark Mode, prefers-color-scheme, data attribute 참고: 06-theming


forced-colors

카테고리: Theming 별칭: Windows High Contrast Mode, WHCM

OS의 강제 색상 모드(주로 Windows 고대비). @media (forced-colors: active). 모든 색이 시스템 색으로 강제 치환되므로 border·outline에만 의존하는 디자인이 안전.

관련: WCAG, System Color


FOUC (Flash of Unstyled Content)

카테고리: Theming 별칭: theme flash, FOIT (typography 한정)

다크모드 토글 시 흰 배경이 잠깐 깜빡이는 현상. SSR + localStorage 동기화 스크립트로 해결. Next.js의 next-themes 라이브러리가 표준 해법.

관련: Dark Mode, data-theme 참고: 06-theming


Logical Property

카테고리: Theming 별칭: CSS logical properties

물리적 방향(left/right)이 아닌 흐름 방향(inline-start/end)을 쓰는 CSS 속성. margin-inline-start, padding-block-end. RTL 지원의 전제.

관련: RTL, writing-mode 참고: 06-theming


Multi-brand Theming

카테고리: Theming 별칭: multi-tenant theming, white-label

한 코드베이스에서 여러 브랜드를 지원. brand 토큰을 layer로 쌓고(base + brand-a vs base + brand-b), CSS variables로 런타임 전환.

관련: Brand, Token Set, data-theme


prefers-color-scheme

카테고리: Theming 별칭: dark mode media query

OS 설정(라이트/다크) 감지. @media (prefers-color-scheme: dark). 사용자가 OS에서 다크모드를 켰는지 알 수 있는 표준.

관련: color-scheme, Dark Mode, data-theme 참고: 06-theming


prefers-contrast

카테고리: Theming 별칭: contrast preference

대비 선호 — no-preference / more / less. WCAG AAA 대비를 사용자 선택으로 조건부 적용.

관련: WCAG, forced-colors


prefers-reduced-motion

카테고리: Theming 별칭: motion preference

전정기관 민감 사용자를 위한 모션 축소 선호. @media (prefers-reduced-motion: reduce). transition·animation을 0.01s로 단축하는 것이 표준 대응.

관련: prefers-reduced-transparency


prefers-reduced-transparency

카테고리: Theming 별칭: transparency preference

투명·블러 축소 선호. iOS·macOS의 “Reduce Transparency” 설정과 연동. backdrop-filter 등을 비활성화.

관련: prefers-reduced-motion


RTL (Right-to-Left)

카테고리: Theming 별칭: right-to-left writing, bidi

아랍어·히브리어처럼 오른쪽→왼쪽으로 흐르는 텍스트. <html dir="rtl">. logical property 없이는 디자인 시스템이 깨진다.

관련: Logical Property, writing-mode 참고: 06-theming


System Color

카테고리: Theming 별칭: CSS system colors, semantic system color

OS가 제공하는 의미 기반 색. Canvas, CanvasText, LinkText, ButtonFace. forced-colors 모드에서 자동 치환 대상.

관련: forced-colors, WCAG


writing-mode

카테고리: Theming 별칭: text orientation

텍스트 흐름 방향 — horizontal-tb (가로), vertical-rl (세로, 일본·중국 전통). logical property와 결합해 방향 무관 디자인을 만든다.

관련: Logical Property, RTL


요약 + Mermaid

이 카테고리는 컨텍스트에 따른 값 전환의 어휘다. 핵심 두 축 — 시스템 신호 (prefers-*)사용자 선택 (data-theme) — 의 우선순위 결정이 거의 모든 테마 구현의 핵심 결정점.