Skip to main content Home About the Design SystemRoadmap OverviewDesignersDevelopers OverviewColorGridIconographyInteractionsSpacingTypography Overview Global colorBox shadowTypographyBorderOpacitySpaceLengthIconBreakpointsMedia queries All elements Accordion Alert Announcement Audio player Avatar Back to top Badge Blockquote Breadcrumb Button Card Chip Code block Call to action Dialog Disclosure Footer Health index Icon Jump links Menu dropdown Navigation link Navigation (primary) Navigation (secondary) Navigation (vertical) Pagination PopoverPlanned Progress stepper Scheme toggle Site status Skeleton Skip link Spinner Statistic Subnavigation Surface Switch Table Tabs Tag Tile Timestamp Tooltip Video embed OverviewColor PalettesCustomizingDevelopers All PatternsAccordionCall to ActionCardFilterFormLink with iconLogo wallSearch barSticky bannerSticky cardTabsTagTile All Personalization PatternsAnnouncement FundamentalsAccessibility toolsAssistive technologiesCI/CDContentContributorsDesignDevelopmentManual testingResourcesScreen readers Design/code status Release notes Get support

Menu dropdown

OverviewStyleGuidelinesCodeAccessibilityDemos
GuidelinesVariantsWriting contentResponsive designBest practicesGuidelinesVariantsWriting contentResponsive designBest practices

Guidelines

A menu dropdown expands to show a list of menu items, which are typically actions that a user can take.

Though they may be visually similar, understanding the difference between a menu dropdown and a select list is crucial for proper semantic implementation and accessibility.

An action in a menu dropdown performs a command, and its toggle functions like a button. It does not update a form field value, which would result in a change to what the toggle displays.

A select list is a form control that allows a user to choose one or more options as inputs. The value in a select list’s toggle does change to show a user’s selection(s).

Note

Red Hat Design System does not yet include a select list element. Contact the team with any questions.

A menu toggle labeled, 'Share,' with menu items showing related actions.

Menu dropdown

A select list labeled 'Select a state' that includes related choices.

Select list (example only)

Using menu item types

Menu dropdowns can show actions or links. If possible, avoid mixing the two types.

Warning

Do not change the style of a linked menu item. Doing so may remove the affordances that help users know they will be navigating away from their current view.

An expanded menu dropdown with actions only and another with links only.

Variants

Basic menu toggle

The basic menu toggle is the default and clearly communicates the menu’s purpose. It is best used when:

  • the contents of the dropdown are not easily inferred
  • there is enough space to include text
  • more than one toggle is present in a section
A basic menu toggle with visible text that says, 'Actions'.

Compact menu toggle

The compact menu toggle conserves space, but it does not include a visible label. This variant works well when:

  • the menu dropdown is related to specific items, like cards or rows in a table
  • there is limited space for a dropdown toggle
Compact toggles without a border and with a subtle border.

Writing content

The content within the menu dropdown must be clear, concise, and action-oriented.

For a basic menu toggle, the label should be descriptive (e.g., "Actions," "More options”). Menu toggle labels should aim to be 1-3 words long and should not wrap when viewed at the smallest breakpoint.

For a compact menu toggle, you must use a descriptive aria-label (e.g., "Account settings") for accessibility, as there is no visible text.

Use verb-noun format whenever possible (e.g., "Create user," "View details") for both actions and links. Menu items that are links should still describe where the link will take a user.

Aim for menu item labels that are 1-3 words. If an item requires more context, consider adding a description.

Group headings

Headings should be used sparingly to categorize groups of items and improve scannability. They are helpful for dropdown menus with many items.

Menu item descriptions should be used if a menu item requires additional explanation.

Responsive design

A menu dropdown’s layout should not change much at different screen or container sizes. Both toggle variants can be used on mobile or desktop, depending on the context.

Best practices

Nesting

Expanded menu dropdown with a single level of menu items.

Do use only a single level of menu items for a menu dropdown.

Expanded menu dropdown with a nested and expanded menu item.

Do not create multi-level menu dropdowns.

Grouping menu items

Menu dropdown with three groups. One group has five menu items.

Do limit the number of items to 7 or fewer per group to make the options easy to scan.

An expanded menu dropdown with eight, ungrouped menu items.

Reconsider having more than 7 menu items if you are not categorizing the items into groups.

Destructive actions

Expanded menu dropdown with 'Delete' menu item in a separate group.

Do find a way to differentiate or separate destructive actions.

Expanded menu dropdown with 'Delete' action mixed with non-destructive items

Avoid mixing destructive actions with non-destructive actions, especially if additional visual clues, like status icons, are not used.

Element purpose

Expanded 'Edit' menu dropdown with actions.

Do add menu items that allow users to perform actions without changing any labels in the menu dropdown.

Expanded menu dropdown labeled 'Choose a product platform'.

Do not use a menu dropdown for navigation or for form options that should be used in a select list.

Types of menu items

Menu dropdown that contains actions to edit something.

Menu items in a single menu dropdown should usually be actions or functions.

Menu dropdown with two actions and a link.

Avoid mixing actions and links whenever possible. If those two types of menu items must be included, do not replace the link styling that’s built into the menu dropdown.

© 2025 Red Hat Deploys by Netlify