| alignment | - | 'start', 'end', { xs: 'start' | 'end' }, { sm: 'start' | 'end' }, { md: 'start' | 'end' }, { lg: 'start' | 'end' }, { xl: 'start' | 'end'}, { '2xl': 'start' | 'end'} |
Specifies the alignment of the React Dropdown Menu within this React Dropdown. An object becomes a responsive placement — { xs: 'start', lg: 'end' } reads as 'bottom-start lg:bottom-end' — and turns dynamic positioning off. |
| as | div | (ElementType & 'symbol') | (ElementType & 'object') | (ElementType & 'div') | (ElementType & 'slot') | (ElementType & 'style') | ... 175 more ... |
Determines the root node component (native HTML element or a custom React component) for the React Dropdown. |
| autoClose | true | boolean, 'inside', 'outside' |
Configures automatic closing behavior for the React Dropdown: - true - Close on clicks inside or outside of the React Dropdown Menu. - false - Disable auto-close; manually call hide or toggle (also not closed by Escape). - 'inside' - Close only when clicking inside the React Dropdown Menu. - 'outside' - Close only when clicking outside the React Dropdown Menu. |
| className | - | string |
Adds custom classes to the React Dropdown root element. |
| container4.11.0+ | - | Element, DocumentFragment, (() => Element | DocumentFragment | null), null |
Appends the React Dropdown Menu to a specific element. You can pass an HTML element or a function returning an element. Defaults to document.body. Inside a modal dialog it goes into the dialog instead, because the rest of the page is inert. |
| dark | - | boolean |
Applies a darker color scheme to the React Dropdown Menu, often used within dark navbars. |
| defaultShow6.0.0+ | - | boolean |
The initial open state of an uncontrolled dropdown — read once on mount. |
| direction | - | 'center', 'dropup', 'dropup-center', 'dropend', 'dropstart' |
Specifies the direction of the React Dropdown. |
| floatingConfig5.5.0+ | - | Partial<ComputePositionConfig>, ((defaultFloatingConfig: Partial<ComputePositionConfig>) => Partial<ComputePositionConfig>) |
Provides a custom Floating UI configuration or a function that returns a modified configuration for advanced positioning of the React Dropdown Menu. [Read more](https://floating-ui.com/docs/computePosition#options) |
| offset | [0, 2] | [number, number] |
Defines x and y offsets ([x, y]) for the React Dropdown Menu relative to its target. |
| onHide4.9.0+ | - | (() => void) |
Callback fired right before the React Dropdown becomes hidden. |
| onShow | - | (() => void) |
Callback fired immediately after the React Dropdown is displayed. |
| onShowChange6.0.0+ | - | ((show: boolean) => void) |
Callback fired when the React Dropdown requests an open-state change — a dismiss gesture (Escape, outside click, item click) or, in uncontrolled mode, any internal toggle. In controlled mode update show yourself, or the dropdown stays as it is. |
| placement | - | 'auto', 'auto-start', 'auto-end', 'top', 'top-start', 'top-end', 'bottom', 'bottom-start', 'bottom-end', 'left', 'left-start', 'left-end', 'right', 'right-start', 'right-end', 'start', 'start-start', 'start-end', 'end', 'end-start', 'end-end', string |
Where the React Dropdown Menu opens. It wins over direction and alignment; left unset, the menu follows them. A logical start or end side resolves to the side the writing direction puts it on, and breakpoint prefixes make the placement responsive — 'bottom-start md:top-end' reads as bottom-start below md and top-end from md up. |
| popper | true | boolean |
Enables or disables dynamic positioning for the React Dropdown Menu. When disabled, the menu is rendered statically and carries data-coreui-popper="static". |
| portal4.8.0+ | - | boolean |
Renders the React Dropdown Menu using a React Portal, allowing it to escape the DOM hierarchy for improved positioning. |
| reference5.9.0+ | toggle | HTMLElement, 'parent', 'toggle', RefObject<HTMLElement, null> |
Sets the reference element for positioning the React Dropdown Menu. - toggle - The React Dropdown Toggle button (default). - parent - The React Dropdown wrapper element. - HTMLElement - A custom HTML element. - React.RefObject - A custom reference element. |
| show6.0.0+ | - | boolean |
Control the open state. When set, the dropdown renders what show says and dismiss gestures only call onShowChange — nothing closes until the parent flips the prop. |
| variant | dropdown | 'btn-group', 'dropdown', 'input-group', 'nav-item' |
Defines the visual variant of the React Dropdown |
| visibleDeprecated 6.0.0 | - | boolean |
Controls the visibility of the React Dropdown Menu: - true - Visible - false - Hidden Use defaultShow / show / onShowChange instead — visible is ignored when either of them is set. |