# Mega Menu Mega menus dropdown menus that appear when users hover or click on a navigation option. They are typically seen on websites with a wide range of content and categories. Mega menus are particularly useful in UX design as they can provide an overview of all available options within a site\'s complex information architecture. **Category:** Components **Storybook:** https://doc.ux4g.gov.in/web/?path=/story/ux4g-components-mega-menu--introduction ## Framework setup ### HTML / CDN ```html ``` ### React ```bash npm install ux4g-web-components ``` ```jsx import 'ux4g-web-components/styles.css'; import 'ux4g-web-components/design-system'; ``` ### Angular Update `angular.json`: ```json { "styles": [ "node_modules/ux4g-web-components/styles/ux4g.css", "src/styles.css" ], "scripts": [ "node_modules/ux4g-web-components/dist/runtime/design-system.js" ] } ``` ## Code examples The snippets below are extracted from the Storybook canvas for Mega Menu. Each example shows the rendered HTML, the equivalent React JSX, and the Angular template markup. ### 1. Introduction — Introduction HTML: ```html
Components

Mega Menu

Mega menus dropdown menus that appear when users hover or click on a navigation option. They are typically seen on websites with a wide range of content and categories. Mega menus are particularly useful in UX design as they can provide an overview of all available options within a site's complex information architecture.

Mega Menu Showcase

Visual demonstration of Mega Menu variations.

Variant 1

Variant 5

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

CSS Class Reference

Quickly copy layout and utility classes for Mega Menus.

Structural Classes

Main Container ux4g-mega-menu
Inner Container ux4g-mega-menu-container
Sidebar Area ux4g-mega-menu-sidebar
Content Area ux4g-mega-menu-content
Column ux4g-mega-menu-column
Item List ux4g-mega-menu-item-list
``` React: ```jsx import React from 'react'; const MegaMenuExample1Demo = () => ( <>
Components

Mega Menu

Mega menus dropdown menus that appear when users hover or click on a navigation option. They are typically seen on websites with a wide range of content and categories. Mega menus are particularly useful in UX design as they can provide an overview of all available options within a site's complex information architecture.

Mega Menu Showcase

Visual demonstration of Mega Menu variations.

Variant 1

Variant 4

{/* Left Grid: 3 columns, 2 rows */}
{/* Column 1, Row 1 */} {/* Column 2, Row 1 */} {/* Column 3, Row 1 */} {/* Column 1, Row 2 */} {/* Column 2, Row 2 */} {/* Column 3, Row 2 */}
{/* Right Promo Sidebar */}
Promo Card
Promo Card

Variant 5

{/* Category 1 Content */}

Category 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco

{/* Right Promo Card */}
Promo Card
{/* Category 2 Content */}

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 3 Content */}

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 4 Content */}

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 5 Content */}

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 6 Content */}

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 7 Content */}

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 8 Content */}

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

CSS Class Reference

Quickly copy layout and utility classes for Mega Menus.

Structural Classes

Main Container ux4g-mega-menu
Inner Container ux4g-mega-menu-container
Sidebar Area ux4g-mega-menu-sidebar
Content Area ux4g-mega-menu-content
Column ux4g-mega-menu-column
Item List ux4g-mega-menu-item-list
{/* Toast Notification */}
); export default MegaMenuExample1Demo; ``` Angular: ```html
Components

Mega Menu

Mega menus dropdown menus that appear when users hover or click on a navigation option. They are typically seen on websites with a wide range of content and categories. Mega menus are particularly useful in UX design as they can provide an overview of all available options within a site's complex information architecture.

Mega Menu Showcase

Visual demonstration of Mega Menu variations.

Variant 1

Variant 5

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

CSS Class Reference

Quickly copy layout and utility classes for Mega Menus.

Structural Classes

Main Container ux4g-mega-menu
Inner Container ux4g-mega-menu-container
Sidebar Area ux4g-mega-menu-sidebar
Content Area ux4g-mega-menu-content
Column ux4g-mega-menu-column
Item List ux4g-mega-menu-item-list
``` ### 2. Variant1 — Variant 1 HTML: ```html
``` React: ```jsx import React from 'react'; const MegaMenuExample2Demo = () => ( <>
); export default MegaMenuExample2Demo; ``` Angular: ```html
``` ### 3. Variant2 — Variant 2 HTML: ```html
``` React: ```jsx import React from 'react'; const MegaMenuExample3Demo = () => ( <>
{/* Column 1 */}

Title

{/* Column 2 */}

Title

{/* Column 3 */}

Title

{/* Column 4 */}

Title

); export default MegaMenuExample3Demo; ``` Angular: ```html
``` ### 4. Variant3 — Variant 3 HTML: ```html
``` React: ```jsx import React from 'react'; const MegaMenuExample4Demo = () => ( <>
{/* Row 1 */}

Title

Title

Title

Title

{/* Row 2 */}

Title

Title

Title

Title

); export default MegaMenuExample4Demo; ``` Angular: ```html
``` ### 5. Variant4 — Variant 4 HTML: ```html
``` React: ```jsx import React from 'react'; const MegaMenuExample5Demo = () => ( <>
{/* Left Grid: 3 columns, 2 rows */}
{/* Column 1, Row 1 */} {/* Column 2, Row 1 */} {/* Column 3, Row 1 */} {/* Column 1, Row 2 */} {/* Column 2, Row 2 */} {/* Column 3, Row 2 */}
{/* Right Promo Sidebar */}
Promo Card
Promo Card
); export default MegaMenuExample5Demo; ``` Angular: ```html
``` ### 6. Variant5 — Variant 5 HTML: ```html

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
``` React: ```jsx import React from 'react'; const MegaMenuExample6Demo = () => ( <>
{/* Category 1 Content */}

Category 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco

{/* Right Promo Card */}
Promo Card
{/* Category 2 Content */}

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 3 Content */}

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 4 Content */}

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 5 Content */}

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 6 Content */}

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 7 Content */}

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
{/* Category 8 Content */}

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
); export default MegaMenuExample6Demo; ``` Angular: ```html

Category 2

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 3

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 4

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 5

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 6

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 7

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card

Category 8

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.

Promo Card
``` ### 7. Variant6 — Variant 6 HTML: ```html
``` React: ```jsx import React from 'react'; const MegaMenuExample7Demo = () => ( <>
{/* Column 1 */} {/* Column 2 */} {/* Column 3 */}
{/* Right Promo Column (2 cards) */}
Promo Card
Promo Card
); export default MegaMenuExample7Demo; ``` Angular: ```html
``` ## Accessibility notes - Use semantic HTML and required ARIA attributes where the Storybook example shows them. - Ensure visible focus indicators and keyboard operability. - Test color contrast against WCAG 2.1 AA.