Navbar

Navbar

사이트 상단 내비게이션 바입니다. 브랜드·메뉴·검색·액션 버튼을 한 줄에 배치하며, 좁은 화면에서는 토글로 메뉴를 접습니다.

기본

NavbarItem으로 메뉴를 구성합니다. active prop으로 현재 페이지를 표시합니다.

브랜드

brandIcon에 Icon 컴포넌트를 함께 배치할 수 있습니다.

액션 영역

navbar_actions에 버튼·아바타 등을 배치합니다. 버튼 컴포넌트와 조합해 사용합니다.

검색

navbar_search에 input 컴포넌트를 넣어 검색 필드를 제공합니다.

크기

navbar_sm · navbar_lg로 높이를 조절합니다.

스타일 변형

navbar_borderless · navbar_dark · navbar_sticky로 외형을 바꿉니다.

배지

메뉴 항목에 badge 컴포넌트를 함께 사용할 수 있습니다.

반응형

768px 미만에서 navbar_toggle이 표시되고 메뉴가 접힙니다. aria-expanded · aria-controls · aria-label을 지정합니다.

API · Navbar Props

Prop타입기본값설명
brandstring브랜드 텍스트. brand 슬롯으로 대체
size'sm' | 'md' | 'lg'mdnavbar_sm · navbar_lg
borderlessbooleanfalse하단 테두리 제거
darkbooleanfalse어두운 배경 (navbar_dark)
stickybooleanfalse상단 고정 (navbar_sticky)
responsivebooleanfalse모바일 토글·data-navbar
collapseIdstringnavbar_collapse id (토글 aria-controls)
brandAsElementTypea브랜드 루트 요소. Next Link 등을 지정
brandHrefstring#브랜드 링크 URL
brandContentReactNode브랜드 영역 (brand prop 대체)
brandIconReactNode브랜드 아이콘
itemsReactNode메뉴 목록 (NavbarList)
searchReactNode검색 필드 (navbar_search)
actionsReactNode우측 액션 (navbar_actions)
classNamestring루트 요소 추가 클래스
ripplebooleantrue클릭 파장(ripple). true 시 자식 클릭 표면에 data-ripple · false 시 data-no-ripple으로 하위 전체 비활성

API · NavbarItem Props

Prop타입기본값설명
labelstring링크 텍스트. children으로 대체
hrefstring#링크 URL
asElementTypea링크 루트 요소. Next Link 등을 지정
activebooleanfalseis-active · aria-current="page"
badgeReactNode링크 옆 배지
childrenReactNode링크 텍스트 (label 대체)
classNamestring루트 요소 추가 클래스
ripplebooleantrue클릭 파장(ripple). true 시 data-ripple 활성 · false 비활성. 기본 활성

API · Navbar Children

Prop / Children설명
brandContent브랜드 영역 (brand · brandIcon 대체)
brandIcon브랜드 아이콘
items메뉴 목록 (NavbarList)
childrenitems 대체 — NavbarItem 나열
search검색 필드 (navbar_search)
actions우측 액션 (navbar_actions)

API · NavbarItem Children

Prop / Children설명
children링크 텍스트 (label 대체)
badge링크 옆 배지

클래스 · 속성

React 컴포넌트가 렌더하는 OOCSS 클래스입니다. HTML 마크업으로 직접 작성할 때 동일하게 조합합니다.

클래스설명
navbar · navbar_container · navbar_brand루트·컨테이너·브랜드
navbar_toggle · navbar_collapse · navbar_nav · navbar_list토글·접힘 영역·내비
navbar_item · navbar_link항목·링크 (is-active)
navbar_search · navbar_actions검색·액션 영역
navbar_sm · navbar_lg · navbar_sticky · navbar_borderless · navbar_dark크기·변형
is-openReact 상태로 관리하는 반응형 메뉴 열림 상태
data-ripple클릭 파장 활성. data-ripple="surface"는 절대 위치 보조 버튼용
data-ripple="false"해당 요소 ripple 비활성
data-no-ripple하위 전체 ripple 비활성

디자인 토큰

토큰기본값설명
--navbar-height · --navbar-height-sm · --navbar-height-lg높이 변형
--navbar-padding-x · --navbar-gap패딩·간격
--navbar-z-indexsticky 레이어