ActionBar
A fixed-position bottom bar for bulk selection actions
Source
LLM docs
Docs
Package
Usage
ActionBar is a fixed-position bottom bar that appears when items are selected,
providing contextual bulk actions. It is built using Affix, Transition
and Paper components.
Content inside ActionBar is composed freely using existing Mantine components
(Button, ActionIcon, Group, Text, etc.). Use ActionBar.Divider to
add a vertical divider and ActionBar.CloseButton to add a close button that
triggers the onClose callback.
| Element position | Element name | Symbol | Atomic mass | |
|---|---|---|---|---|
| 6 | Carbon | C | 12.011 | |
| 7 | Nitrogen | N | 14.007 | |
| 39 | Yttrium | Y | 88.906 | |
| 56 | Barium | Ba | 137.33 | |
| 58 | Cerium | Ce | 140.12 |
ActionBar root has role="group" and the divider has role="separator" so that assistive
technologies announce the controls as one bar. Set aria-label to describe what the actions apply to.
With ActionIcon buttons
| Element position | Element name | Symbol | Atomic mass | |
|---|---|---|---|---|
| 6 | Carbon | C | 12.011 | |
| 7 | Nitrogen | N | 14.007 | |
| 39 | Yttrium | Y | 88.906 | |
| 56 | Barium | Ba | 137.33 | |
| 58 | Cerium | Ce | 140.12 |
Placement
By default, ActionBar is centered at the bottom of the screen. You can change
the position with the position prop. When using non-centered positions, set
styles={{ root: { marginInline: 0 } }} to remove the auto centering.
Close on Escape
By default, ActionBar does not close when Escape key is pressed. Set closeOnEscape
to enable this behavior:
Transitions
ActionBar is animated with the Transition component,
{ transition: 'pop', duration: 200 } by default. Use transitionProps to change
the transition, its duration and timing function:
keepMounted
By default, the action bar is removed from the DOM when it is closed. Set keepMounted
to keep it mounted and hide it with display: none instead – for example, if the bar
contains form state that must be preserved between openings:
Rendering in a portal
ActionBar is rendered inside Portal by default – this way it is not
affected by overflow and transform styles of its parent elements. Set
withinPortal={false} to render it in place, and use portalProps to pass props
down to the Portal component.