↑↓ 이동 · Enter 열기 · Esc 닫기

Segment Control

옵션 하나를 골라 같은 화면에서 바로 필터링하거나 뷰를 전환해요.

Anatomy

  • 01
    Container
    Filled/Outlined 는 패딩 3px·radius-md 상자, Pill 은 배경 없이 항목만
  • 02
    Segment Item
    선택 단위. 선택되면 배경·글자색이 바뀌고 radius-sm(8px)
  • 03
    Count Badge
    Pill 전용. 결과 수를 표시하는 radius-full 배지

Properties

Variant

Pill 은 필터링(Count badge 로 결과 수 표시), Filled 는 리스트/그리드 같은 뷰 전환, Outlined 는 배경이 이미 채워진 영역의 2차 컨트롤이에요.

Layout

base 는 fill 로 두고 전체 width 를 조절해요. Fill 은 옵션 5개 이하일 때만, 많아지면 Hug 예요.

Size

같은 화면에선 사이즈를 통일해요. SM 은 좁은 패널·툴바에 써요.

State

Enabled · Selected · Disabled. Segment Control 의 Disabled 는 투명도 35% 예요.

Case

base 는 fill 로 두고 전체 width 를 조절해요. 높이도 같아요.

01
Pill (필터링)
카테고리·상태로 걸러낼 때. Count badge 로 결과 수를 보여줘요.
02
Filled (뷰 전환)
리스트/그리드/캘린더처럼 표시 방식을 전환하는 주요 컨트롤.
03
Outlined (서브 컨트롤)
카드나 툴바 안처럼 배경이 이미 채워진 영역의 2차 컨트롤.

Guidelines

언제 써요

고르는 순간 같은 화면이 바뀌어야 해요. 페이지 이동이 아니라 결과를 거르거나 표시 방식을 바꾸는 용도이고, 옵션 2~5개일 때 가장 좋아요.

✓ DO

  • 카테고리·상태 필터링
  • 리스트/그리드/캘린더 뷰 전환
  • 옵션 2~5개
  • 선택 결과가 같은 화면에 바로 반영될 때

✗ DON'T

  • 페이지·섹션 이동(네비게이션 몫)
  • 선택마다 URL 이 바뀌는 라우팅
  • 옵션 6개 이상
  • 탭마다 전혀 다른 콘텐츠로 이동

Variant 선택

Count badge 가 필요하면 Pill 이에요. Fill 레이아웃은 옵션 5개 이하일 때만, 많아지면 Hug 예요.

단일 선택 원칙

항상 하나만 선택돼요. 복수 선택은 Checkbox 나 Filter Chip 이에요.

Specification

Container

Segment Control 컨테이너 스펙
속성Filled / OutlinedPill
height (MD)44px— (auto)
height (SM)36px— (auto)
border-radiusradius-md (10px)radius-full (999px)
padding (container)3px0
gap2px4px
background--color-bg-layer1transparent

Item

Segment Item 상태별 스펙
속성StateFilledOutlined
backgroundSelected--color-accent-normal--color-bg-white
backgroundEnabledtransparenttransparent
colorSelected--color-label-inverse--color-label-normal
colorEnabled--color-label-subtle--color-label-subtle
box-shadowSelectednoneshadow-sm
border-radius—radius-sm (8px)radius-sm (8px)

Count Badge

Count badge 는 Pill 전용이에요.

Count badge 스펙 (Pill 전용)
속성SelectedEnabled
backgroundrgba(255,255,255,0.28)--color-bg-layer2
color--color-label-inverse--color-label-subtle
font-size11px11px
padding2px 8px2px 8px
border-radiusradius-full (999px)radius-full (999px)

⚠️ 위 표의 --color-label-subtle → --color-label-alternative 중 앞쪽 이름은 tokens.css 에 실존하지 않아요(Figma 원본 표기 오류). 구현 시 교정값을 써요.

Polaris Office Design System · © 2026 Polaris Office. All rights reserved. · 이용약관Version 1.1.0업데이트 2026.09.18