SpeedDial API
The API documentation of the SpeedDial React component. Learn more about the props and the CSS customization points.
Import
import SpeedDial from '@material-ui/lab/SpeedDial';
// or
import { SpeedDial } from '@material-ui/lab';
You can learn more about the difference by reading this guide.
Props
| Name | Type | Default | Description |
|---|---|---|---|
| ariaLabel * | string | The aria-label of the button element. Also used to provide the id for the SpeedDial element and its children. |
|
| children | node | SpeedDialActions to display when the SpeedDial is open. |
|
| classes | object | Override or extend the styles applied to the component. See CSS API below for more details. | |
| direction | 'down' | 'left' | 'right' | 'up' |
'up' | The direction the actions open relative to the floating action button. |
| FabProps | object | {} | Props applied to the Fab element. |
| hidden | bool | false | If true, the SpeedDial will be hidden. |
| icon | node | The icon to display in the SpeedDial Fab. The SpeedDialIcon component provides a default Icon with animation. |
|
| onClose | func | Callback fired when the component requests to be closed. Signature: function(event: object, reason: string) => voidevent: The event source of the callback. reason: Can be: "toggle", "blur", "mouseLeave", "escapeKeyDown". |
|
| onOpen | func | Callback fired when the component requests to be open. Signature: function(event: object, reason: string) => voidevent: The event source of the callback. reason: Can be: "toggle", "focus", "mouseEnter". |
|
| open * | bool | If true, the SpeedDial is open. |
|
| openIcon | node | The icon to display in the SpeedDial Fab when the SpeedDial is open. | |
| TransitionComponent | elementType | Zoom | The component used for the transition. |
| transitionDuration | number | { appear?: number, enter?: number, exit?: number } |
{ enter: duration.enteringScreen, exit: duration.leavingScreen,} | The duration for the transition, in milliseconds. You may specify a single timeout for all transitions, or individually with an object. |
| TransitionProps | object | Props applied to the Transition element. |
The ref is forwarded to the root element.
Any other props supplied will be provided to the root element (native element).
CSS
- Style sheet name:
MuiSpeedDial. - Style sheet details:
| Rule name | Global class | Description |
|---|---|---|
| root | .MuiSpeedDial-root | Styles applied to the root element. |
| fab | .MuiSpeedDial-fab | Styles applied to the Fab component. |
| directionUp | .MuiSpeedDial-directionUp | Styles applied to the root if direction="up" |
| directionDown | .MuiSpeedDial-directionDown | Styles applied to the root if direction="down" |
| directionLeft | .MuiSpeedDial-directionLeft | Styles applied to the root if direction="left" |
| directionRight | .MuiSpeedDial-directionRight | Styles applied to the root if direction="right" |
| actions | .MuiSpeedDial-actions | Styles applied to the actions (children wrapper) element. |
| actionsClosed | .MuiSpeedDial-actionsClosed | Styles applied to the actions (children wrapper) element if open={false}. |
You can override the style of the component thanks to one of these customization points:
- With a rule name of the
classesobject prop. - With a global class name.
- With a theme and an
overridesproperty.
If that's not sufficient, you can check the implementation of the component for more detail.