MDUI문서
llms.txt 링크 복사llms-full.txt 링크 복사이 페이지를 Markdown 형식으로 보기ChatGPT와 이 페이지 내용에 대해 논의하기프로젝트 전체 문서에 대해 ChatGPT와 논의하기
프리셋 색상
사용자 지정 색상
배경화면에서 색상 추출
배경화면을 선택해 주세요
개발 가이드
AI 보조 개발
스타일
프레임워크와 통합
컴포넌트
Avatar 아바타Badge 배지BottomAppBar 하단 앱 바Button 버튼ButtonIcon 아이콘 버튼Card 카드Checkbox 체크박스Chip CircularProgress 원형 프로그레스Collapse 접기Dialog 다이얼로그Divider 구분선Dropdown 드롭다운Fab 플로팅 액션 버튼Icon 아이콘Layout 레이아웃LinearProgress 선형 프로그레스List 목록Menu 메뉴NavigationBar 내비게이션 바NavigationDrawer 내비게이션 드로어NavigationRail 내비게이션 레일Radio 라디오RangeSlider 범위 슬라이더Select 셀렉트SegmentedButton 세그먼트 버튼Slider 슬라이더Snackbar 스낵바Switch 스위치Tabs TextField 텍스트 필드Tooltip 툴팁TopAppBar 상단 앱 바
함수
독립 패키지

NavigationBar내비게이션 바

내비게이션 바는 모바일 페이지에서 몇 개의 주요 페이지 간을 쉽게 전환할 때 사용합니다.

사용법

컴포넌트 가져오기:

import 'mdui/components/navigation-bar.js';
import 'mdui/components/navigation-bar-item.js';

컴포넌트의 TypeScript 타입 가져오기:

import type { NavigationBar } from 'mdui/components/navigation-bar.js';
import type { NavigationBarItem } from 'mdui/components/navigation-bar-item.js';

사용 예시: (예시의 style="position: relative"는 데모를 위해 필요하며, 실제 사용 시에는 해당 스타일을 제거하세요.)

Item 1 Item 2 Item 3
<mdui-navigation-bar value="item-1" style="position: relative">
  <mdui-navigation-bar-item icon="place" value="item-1">Item 1</mdui-navigation-bar-item>
  <mdui-navigation-bar-item icon="commute" value="item-2">Item 2</mdui-navigation-bar-item>
  <mdui-navigation-bar-item icon="people" value="item-3">Item 3</mdui-navigation-bar-item>
</mdui-navigation-bar>

주의 사항:

이 컴포넌트는 기본적으로 position: fixed 위치 지정을 사용하며, 페이지 내용이 컴포넌트에 가려지는 것을 방지하기 위해 자동으로 bodypadding-bottom 스타일을 추가합니다. 하지만 다음 두 가지 경우에는 기본적으로 position: absolute 위치 지정을 사용합니다:

  1. scroll-target 속성이 지정된 경우. 이 경우 scroll-target 요소에 padding-bottom 스타일이 추가됩니다.
  2. 컴포넌트가 <mdui-layout></mdui-layout> 내에 위치한 경우. 이 경우 padding-bottom 스타일이 추가되지 않습니다.

예시

텍스트 레이블 표시 상태

내비게이션 바의 텍스트 레이블은 기본적으로 내비게이션 항목이 3개 이하일 때 항상 표시되고, 내비게이션 항목이 3개를 초과하면 선택된 상태의 텍스트만 표시됩니다.

<mdui-navigation-bar> 컴포넌트에 label-visibility 속성을 설정하여 텍스트 레이블의 표시 상태를 조정할 수 있습니다. 가능한 값은 다음과 같습니다:

  • selected: 선택된 상태의 텍스트만 표시
  • labeled: 항상 텍스트 표시
  • unlabeled: 항상 텍스트 표시 안 함

지정된 컨테이너 내에 위치시키기

기본적으로 내비게이션 바는 현재 창을 기준으로 페이지 하단에 표시됩니다.

내비게이션 바를 지정된 컨테이너 안에 넣으려면 <mdui-navigation-bar> 컴포넌트에 scroll-target 속성을 지정하면 됩니다. 이 속성의 값은 스크롤 가능한 내용의 컨테이너에 대한 CSS 선택자 또는 DOM 요소입니다. 이 경우 내비게이션 바는 부모 요소를 기준으로 표시됩니다(부모 요소에 position: relative; overflow: hidden 스타일을 직접 추가해야 합니다).

스크롤 시 숨기기

<mdui-navigation-bar> 컴포넌트에 scroll-behavior 속성을 hide로 설정하면 페이지를 아래로 스크롤할 때 내비게이션 바를 숨기고 위로 스크롤할 때 다시 표시할 수 있습니다.

scroll-threshold 속성을 사용해 내비게이션 바 숨기기를 시작할 스크롤 픽셀 수를 설정할 수 있습니다.

아이콘

<mdui-navigation-bar-item> 컴포넌트에서 icon 속성은 비활성화 상태의 내비게이션 항목 아이콘을 설정하고, active-icon 속성은 활성화 상태의 내비게이션 항목 아이콘을 설정할 때 사용합니다. iconactive-icon 슬롯을 통해 비활성화 및 활성화 상태의 아이콘 요소를 설정할 수도 있습니다.

<mdui-navigation-bar-item> 컴포넌트에 href 속성을 설정하면 내비게이션 항목을 링크로 변환할 수 있습니다. 이때 링크 관련 속성(download, target, rel)도 함께 사용합니다.

배지

<mdui-navigation-bar-item> 컴포넌트에서 badge 슬롯을 통해 배지를 추가할 수 있습니다.

HTML 속성JavaScript 프로퍼티Reflect유형기본값

비활성 상태의 Material Icons 아이콘 이름입니다. slot="icon"을 통해서도 설정할 수 있습니다.

활성 상태의 Material Icons 아이콘 이름입니다. slot="active-icon"을 통해서도 설정할 수 있습니다.

내비게이션 항목의 값입니다.

링크의 대상 URL입니다.

이 속성을 설정하면 컴포넌트 내부가 <a> 요소로 렌더링되며, 링크 관련 속성을 사용할 수 있습니다.

다운로드할 링크 대상을 지정합니다.

참고: href 속성이 지정된 경우에만 유효합니다.

링크를 여는 방식을 지정합니다. 사용 가능한 값은 다음과 같습니다:

  • _blank: 새 창에서 링크 열기
  • _parent: 부모 프레임에서 링크 열기
  • _self: 기본값. 현재 프레임에서 링크 열기
  • _top: 전체 창에서 링크 열기

참고: href 속성이 지정된 경우에만 유효합니다.

현재 문서와 링크된 문서 간의 관계를 나타냅니다. 사용 가능한 값은 다음과 같습니다:

  • alternate: 현재 문서의 대체 버전
  • author: 현재 문서 또는 글의 작성자
  • bookmark: 가장 가까운 상위 섹션으로의 영구 링크
  • external: 참조된 문서가 현재 문서와 동일한 사이트에 있지 않음
  • help: 관련 도움말 문서로 링크
  • license: 현재 문서의 주요 내용이 참조된 파일의 저작권 라이선스에 따라 사용됨
  • me: 현재 문서가 링크된 콘텐츠의 소유자를 나타냄
  • next: 현재 문서가 시리즈의 일부이며, 참조된 문서는 시리즈의 다음 문서임
  • nofollow: 현재 문서의 작성자 또는 게시자가 참조된 파일을 보증하지 않음
  • noreferrer: Referer 헤더가 포함되지 않음. noopener와 유사하게 동작합니다.
  • opener: 하이퍼링크가 최상위 브라우징 컨텍스트를 생성할 때(즉, target 속성 값이 _blank인 경우) 보조 브라우징 컨텍스트를 생성함
  • prev: 현재 문서가 시리즈의 일부이며, 참조된 문서는 시리즈의 이전 문서임
  • search: 현재 파일 및 관련 페이지를 검색하는 데 사용할 수 있는 리소스 링크를 제공
  • tag: 현재 문서에 적용할 수 있는 태그(지정된 주소로 식별됨)를 제공

참고: href 속성이 지정된 경우에만 사용 가능합니다.

페이지 로드 후 자동으로 포커스를 받을지 여부를 지정합니다.

Tab 키를 사용하여 포커스를 이동할 때 요소의 순서를 지정합니다.

이름매개변수반환값

마우스 클릭을 시뮬레이션합니다.

현재 요소에 포커스를 설정합니다.

객체를 인자로 전달할 수 있으며, 객체의 속성은 다음과 같습니다:

  • preventScroll: 기본적으로 요소가 포커스를 받으면 페이지가 스크롤되어 해당 요소가 화면에 표시됩니다. 페이지 스크롤을 방지하려면 이 속성을 true로 설정하십시오.

현재 요소에서 포커스를 제거합니다.

이름

포커스를 얻었을 때 발생합니다.

포커스를 잃었을 때 발생합니다.

이름

내비게이션 항목 텍스트

아이콘

활성 상태의 아이콘 요소

배지

이름

내비게이션 항목 컨테이너

표시기

배지

아이콘

활성 상태의 아이콘

내비게이션 항목 텍스트

이름

표시기의 둥근 모서리 크기입니다. 구체적인 픽셀 값을 지정할 수 있지만, 디자인 토큰을 참조하는 것을 권장합니다.

HTML 속성JavaScript 프로퍼티Reflect유형기본값

숨길지 여부를 설정합니다.

텍스트의 표시 상태입니다. 사용 가능한 값:

  • auto: 옵션이 3개 이하일 때는 항상 텍스트를 표시하고, 옵션이 3개를 초과할 때는 선택된 상태의 텍스트만 표시합니다.
  • selected: 선택된 상태에서만 텍스트를 표시합니다.
  • labeled: 항상 텍스트를 표시합니다.
  • unlabeled: 항상 텍스트를 표시하지 않습니다.

현재 선택된 <mdui-navigation-bar-item>의 값입니다.

스크롤 동작을 지정합니다. 사용 가능한 값:

  • hide: 스크롤 시 숨깁니다.

스크롤 이벤트를 감지할 요소입니다. CSS 선택자, DOM 요소 또는 JQ 객체를 지정할 수 있습니다. 기본적으로 window 객체의 스크롤 이벤트를 감지합니다.

스크롤 동작을 트리거하는 데 필요한 스크롤 거리입니다. 단위는 px입니다.

<mdui-layout> 내에서 이 컴포넌트의 레이아웃 순서를 지정합니다. 값이 작을수록 먼저 배치됩니다. 기본값은 0입니다.

이름

값이 변경될 때 발생합니다.

표시가 시작될 때 발생합니다. event.preventDefault()를 호출하여 표시를 막을 수 있습니다.

표시 애니메이션이 완료되면 발생합니다.

숨김이 시작될 때 발생합니다. event.preventDefault()를 호출하여 숨김을 막을 수 있습니다.

숨김 애니메이션이 완료되면 발생합니다.

이름

<mdui-navigation-bar-item> 컴포넌트

이름

컴포넌트의 둥근 모서리 크기입니다. 구체적인 픽셀 값을 지정할 수 있지만, 디자인 토큰을 참조하는 것을 권장합니다.

컴포넌트의 CSS z-index

이 페이지의 목차