본문 바로가기
명함 만들기 캐릭터 모음 16가지 디자인 · PNG / SVG / PDF

스크롤 탭

분류가 화면 너비보다 많을 때, 옆으로 밀어 가며 고르게 하는 조각.

내비게이션

실제 미리보기

출처

<nav class="dc-st" aria-label="카테고리">
  <ul class="dc-st__track">
    <li><a class="dc-st__tab" href="#" aria-current="page">추천</a></li>
    <li><a class="dc-st__tab" href="#">신상품</a></li>
    <li><a class="dc-st__tab" href="#">인기순</a></li>
    <li><a class="dc-st__tab" href="#">할인중</a></li>
    <li><a class="dc-st__tab" href="#">리뷰 많은</a></li>
    <li><a class="dc-st__tab" href="#">빠른 배송</a></li>
    <li><a class="dc-st__tab" href="#">브랜드관</a></li>
  </ul>
</nav>
.dc-st {
  padding-top: var(--dc-safe-top);
  background: var(--dc-surface);
  border-bottom: 1px solid var(--dc-line);
  font-family: var(--dc-font);
}
.dc-st__track {
  display: flex; align-items: stretch; gap: var(--dc-1);
  padding: 0 var(--dc-3);
  overflow-x: auto; overflow-y: hidden;
  scrollbar-width: none;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-x: contain;
}
.dc-st__track::-webkit-scrollbar { display: none; }
.dc-st__track > li { flex: 0 0 auto; display: flex; }
.dc-st__tab {
  flex: 0 0 auto;
  display: flex; align-items: center; gap: var(--dc-1);
  min-height: 48px; padding: 0 var(--dc-3);
  border-bottom: 2px solid transparent;
  color: var(--dc-text-mute); text-decoration: none;
  font-size: 15px; font-weight: 600; white-space: nowrap;
  transition: color var(--dc-fast), border-color var(--dc-fast);
}
.dc-st__tab[aria-current="page"] {
  color: var(--dc-text); font-weight: 800;
  border-bottom-color: var(--dc-brand);
}
.dc-st__num {
  min-width: 18px; padding: 0 5px;
  border-radius: var(--dc-r-full);
  background: var(--dc-sunken); color: var(--dc-text-sub);
  font-size: 11px; font-weight: 700; line-height: 18px; text-align: center;
}
.dc-st__tab[aria-current="page"] .dc-st__num {
  background: var(--dc-brand-soft); color: var(--dc-brand-text);
}
.dc-st--pill .dc-st__track { padding: var(--dc-2) var(--dc-3); gap: var(--dc-2); }
.dc-st--pill .dc-st__tab {
  min-height: 44px; padding: 0 var(--dc-4);
  border-bottom: 0; border-radius: var(--dc-r-full);
  background: var(--dc-sunken);
}
.dc-st--pill .dc-st__tab[aria-current="page"] {
  background: var(--dc-brand); color: var(--dc-text-on);
}

이렇게 씁니다

  • 첫 탭은 늘 '전체' 같은 넓은 것으로 두고 기본으로 골라 둔다
  • 고른 탭을 화면 가운데로 끌어온다. 오른쪽 끝 탭을 누르면 다음 탭이 보여야 한다
  • 분류가 다섯 개 이하면 스크롤 탭이 아니라 세그먼트 컨트롤이 맞다
  • 탭 이름은 두세 글자로 줄인다 — 길면 한 화면에 두 개밖에 안 보인다

주의할 점

  • 오른쪽에 더 있다는 것이 보이게 마지막 탭을 살짝 걸쳐 두라. 딱 맞게 끊기면 끝인 줄 안다
  • 스크롤바를 숨겼으므로 키보드 사용자를 위해 탭은 모두 링크·버튼이어야 한다
  • --dc-safe-top 을 빼면 노치 밑에 탭이 깔린다

다음에 볼 것