Use when implementing expand and collapse content sections.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when you need to display a large number of links in a single menu.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Display a large number of links in a single menu
Megamenu is a large, multi-column dropdown panel that expands from a navigation bar to reveal a structured collection of links, categories, and sometimes promotional content. Unlike standard dropdown menus, megamenus use the full or near-full width of the page to organize many navigation options at once. Megamenus help users scan large navigation structures without repeated clicking, making them a staple on enterprise, e-commerce, and content-heavy websites.
Use Megamenu to expose a large set of categorized navigation options in a single, scannable panel. Common scenarios include:
references/pattern.md, then choose the smallest viable variation.Do's ✅
aria-haspopup="true" and aria-expanded on trigger buttonsrole="presentation" or heading elements)role="menu" unless implementing full menu keyboard pattern)Lazy Render Panel Content
const [hasOpened, setHasOpened] = useState(false);
const open = () => { setHasOpened(true); setIsOpen(true); };
// Only render panel DOM after first open
{hasOpened && }
The Problem: The megamenu opens instantly on mouse enter, causing accidental triggers as users move across the navigation bar.
How to Fix It: Add a 200-300ms hover intent delay before opening. Use a timer that cancels if the mouse leaves the trigger before the delay completes.
The Problem:
A gap between the trigger and the panel causes mouseleave to fire on the trigger before mouseenter fires on the panel, closing the menu.
How to Fix It: Use a shared close delay (300ms) that is cancelled when the mouse enters the panel. Alternatively, create an invisible "bridge" element connecting the trigger to the panel.
The Problem: Users can only access the megamenu with a mouse. Keyboard users cannot open, navigate, or close the panel.
How to Fix It: Support Enter/Space to toggle, Escape to close, and Arrow keys or Tab to navigate between links. Return focus to the trigger on close.
For full implementation detail, examples, and testing notes, see references/pattern.md.
Pattern page: https://uxpatterns.dev/patterns/navigation/megamenu
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Use when implementing expand and collapse content sections.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when implementing user account configuration and preferences.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when implementing social activity and updates stream.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when implementing conversational AI chat interfaces.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when implementing handling AI-specific errors.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Use when implementing loading states for AI operations.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.