Skip to content

Dropdown

Show design guidelines

Dropdown menus are typically used when you have 5-15 items to choose from. They’re used for navigation or command menus, where an action is initiated based on the selection.

HTML
React
Angular
Dropdown Item Dropdown Item Dropdown Item Dropdown Item
<certara-dropdown button-label="Drop Down">
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownItem } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="Drop Down">
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="Drop Down">
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>
HTML
React
Angular
Dropdown Item Dropdown Item Dropdown Item Dropdown Item
<certara-dropdown button-label="Color" button-color="brand">
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownItem } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="Color" buttonColor="brand">
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="Color" button-color="brand">
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>
HTML
React
Angular
Dropdown Item Dropdown Item Dropdown Item
<certara-dropdown placement="bottom-start" button-label="Actions" open>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownItem } from '@certara/certara-ui-react';
<CertaraDropdown placement="bottom-start" buttonLabel="Actions" open>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown placement="bottom-start" button-label="Actions" open>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
</certara-dropdown>

<certara-dropdown> can be nested within itself using the nested attribute.

HTML
React
Angular
Dropdown Item Dropdown Item Dropdown Item Dropdown Item Nested Item Nested Item
<certara-dropdown button-label="With nested options" open>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown button-label="Nested options" nested>
<certara-dropdown-item>Nested Item</certara-dropdown-item>
<certara-dropdown-item>Nested Item</certara-dropdown-item>
</certara-dropdown>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownItem } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="With nested options" open>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdownItem>Dropdown Item</CertaraDropdownItem>
<CertaraDropdown buttonLabel="Nested options" nested>
<CertaraDropdownItem>Nested Item</CertaraDropdownItem>
<CertaraDropdownItem>Nested Item</CertaraDropdownItem>
</CertaraDropdown>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="With nested options" open>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown-item>Dropdown Item</certara-dropdown-item>
<certara-dropdown button-label="Nested options" nested>
<certara-dropdown-item>Nested Item</certara-dropdown-item>
<certara-dropdown-item>Nested Item</certara-dropdown-item>
</certara-dropdown>
</certara-dropdown>

Dropdown menus are typically used when you have 5-15 items to choose from. They’re used for navigation or command menus, where an action is initiated based on the selection.

animated

Attributeanimated
Typeboolean
Defaultfalse
Requiredfalse
DescriptionApply animation when menu opens and closes

buttonColor

Attributebutton-color
Type"brand" | "danger" | "inverse" | "neutral" | "secondary" | "success"
Default'secondary'
Requiredfalse
DescriptionSupports any color available in <certara-button>

buttonLabel

Attributebutton-label
Typestring
Defaultundefined
Requiredfalse
DescriptionDisplay text on dropdown opener button

buttonSize

Attributebutton-size
Type"lg" | "md" | "sm"
Default'md'
Requiredfalse
DescriptionSupports any size available in <certara-button>

buttonTabindex

Attributebutton-tabindex
Typenumber
Defaultundefined
Requiredfalse
DescriptionSet custom tabindex for the dropdown opener button

buttonVariant

Attributebutton-variant
Type"default" | "icon" | "icon-rounded" | "link" | "outline" | "reset"
Default'default'
Requiredfalse
DescriptionSupports any variant available in <certara-button>

disabled

Attributedisabled
Typeboolean
Defaultfalse
Requiredfalse
DescriptionWill disable the dropdown opener button
Attributemenu-offset
Typenumber
Default4
Requiredfalse
DescriptionSeparation from the opener to the menu (depends on orientation)

nested

Attributenested
Typeboolean
Defaultfalse
Requiredfalse
DescriptionSpecify that a nested dropdown can act as a submenu item of a containing dropdown

open

Attributeopen
Typeboolean
Defaultfalse
Requiredfalse
DescriptionRenders the dropdown with its menu already open, and stays in sync with user interaction: opening or closing the menu updates this value. Intended for documentation examples and tests. For programmatic control at runtime, prefer show() / hide() / toggle(). A menu opened this way is not dismissed by clicking elsewhere on the page — close it via hide() or the opener button.

placement

Attributeplacement
Type"bottom-end" | "bottom-start" | "left-start" | "right-end" | "right-start" | "top-end" | "top-start"
Default'bottom-start'
Requiredfalse
DescriptionThese options will suggest a starting point for the menu position, but <certara-dropdown> will automatically position itself within the viewport to avoid appearing offscreen

position

Attributeposition
Type"absolute" | "fixed"
Default'absolute'
Requiredfalse
DescriptionThis can be set to fixed if the dropdown menu is clipped by a bounding parent element

showOpenerCaret

Attributeshow-opener-caret
Typeboolean
Defaulttrue
Requiredfalse
DescriptionIf set to false, the dropdown opener will not show a caret icon
NameDescriptionBubbles
certaraDropdownClosetrue
certaraDropdownOpentrue
NameSignatureDescription
hide() => Promise<void>Closes the dropdown menu.
show() => Promise<void>Opens the dropdown menu. It stays open until hide() is called or the user closes it.
toggle() => Promise<void>Toggles the dropdown menu open or closed.
NameDescription
Main slot is reserved for <certara-dropdown-*> elements, but it does accept all children
button-labelCan be used for custom label content, including icons

Dropdown items can contain interactive button actions, hyperlinks, and checkboxes

Dropdown item
<certara-dropdown open button-label="Dropdown">
<certara-dropdown-item>Dropdown item</certara-dropdown-item>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownItem } from '@certara/certara-ui-react';
<CertaraDropdown open buttonLabel="Dropdown">
<CertaraDropdownItem>Dropdown item</CertaraDropdownItem>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown open button-label="Dropdown">
<certara-dropdown-item>Dropdown item</certara-dropdown-item>
</certara-dropdown>

active

Attributeactive
Typeboolean
Defaultfalse
Requiredfalse
DescriptionWhether the dropdown item is in an active state

description

Attributedescription
Typestring
Defaultundefined
Requiredfalse
DescriptionAdditional descriptive text that shows below the label

disabled

Attributedisabled
Typeboolean
Defaultundefined
Requiredfalse
DescriptionSet disabled state of control

hideMenuOnClick

Attributehide-menu-on-click
Typeboolean
Defaulttrue
Requiredfalse
DescriptionThe default behavior of the dropdown menu will close when this item is clicked

href

Attributehref
Typestring
Defaultundefined
Requiredfalse
Descriptioncertara-dropdown-item renders as a <button> element by default, unless given an href

target

Attributetarget
Type"_blank" | "_parent" | "_self" | "_top" | "_unfencedTop"
Defaultundefined
Requiredfalse
DescriptionTarget to be used in tandem with href if necessary
NameDescriptionBubbles
certaraClickStandard event emitted when the dropdown item is clickedtrue
certaraDropdownItemClickInternal event emitted when the dropdown item is clicked, used by certara-dropdowntrue

There are no public methods available for this component

NameDescription
Default dropdown-item content
descriptionSlot for descriptive text
right-contentRight-aligned content area for buttons and additional actions

The <certara-dropdown-checkbox> uses all props from <certara-checkbox> with the exception of layout

Dropdown item
<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-checkbox>Dropdown item</certara-dropdown-checkbox>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownCheckbox } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="Dropdown" open>
<CertaraDropdownCheckbox>Dropdown item</CertaraDropdownCheckbox>
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-checkbox>Dropdown item</certara-dropdown-checkbox>
</certara-dropdown>

checked

Attributechecked
Typeboolean
Defaultfalse
Requiredfalse
DescriptionThe checked state of the checkbox

description

Attributedescription
Typestring
Defaultundefined
Requiredfalse
DescriptionAdditional descriptive text that shows below the label

disabled

Attributedisabled
Typeboolean
Defaultfalse
Requiredfalse
DescriptionThe disabled state of the checkbox

hideMenuOnClick

Attributehide-menu-on-click
Typeboolean
Defaultfalse
Requiredfalse
DescriptionThe default behavior of the dropdown menu will close when this item is clicked

indeterminate

Attributeindeterminate
Typeboolean
Defaultfalse
Requiredfalse
DescriptionThe indeterminate state of the checkbox. Can only be set via JavaScript

name

Attributename
Typestring
Defaultthis.inputId
Requiredfalse
DescriptionThe name of the checkbox

value

Attributevalue
Typeany
Default'on'
Requiredfalse
DescriptionThe value of the checkbox
NameDescriptionBubbles
certaraBlurStandard event emitted when checkbox is blurredtrue
certaraChangeStandard event emitted when checkbox is toggledfalse
certaraDropdownItemClickInternal event emitted when the dropdown item is clicked, used by certara-dropdowntrue
certaraFocusStandard event emitted when checkbox is focusedtrue

There are no public methods available for this component

NameDescription
Default dropdown-item-checkbox content
descriptionSlot for descriptive text

Section divider within a dropdown

<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-divider></certara-dropdown-divider>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownDivider } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="Dropdown" open>
<CertaraDropdownDivider />
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-divider></certara-dropdown-divider>
</certara-dropdown>

There are no public properties available for this component

There are no events available for this component

There are no public methods available for this component

There are no slots available for this component

Grouping container within a dropdown. This provides the appropriate semantics for a group of items with a corresponding label

<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-group headline="Dropdown Header"></certara-dropdown-group>
</certara-dropdown>
import { CertaraDropdown, CertaraDropdownGroup } from '@certara/certara-ui-react';
<CertaraDropdown buttonLabel="Dropdown" open>
<CertaraDropdownGroup headline="Dropdown Header" />
</CertaraDropdown>
// In your module (e.g., app.module.ts)
import { CertaraUiAngularModule } from '@certara/certara-ui-angular';
@NgModule({
imports: [CertaraUiAngularModule]
})
// In your template:
<certara-dropdown button-label="Dropdown" open>
<certara-dropdown-group headline="Dropdown Header"></certara-dropdown-group>
</certara-dropdown>

headline

Attributeheadline
Typestring
Defaultundefined
Requiredfalse
Description

There are no events available for this component

There are no public methods available for this component

There are no slots available for this component