0 Tk

speed-dial

Import

import SpeedDial from '@mui/material/SpeedDial';
// or
import { SpeedDial } from '@mui/material';

Learn about the difference by reading this guide on minimizing bundle size.

Props of the native component are also available.

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 classes 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 is 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) => void
- event: 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) => void
- event: The event source of the callback.
- reason: Can be: "toggle", "focus", "mouseEnter".
open bool - If true, the component is shown.
openIcon node - The icon to display in the SpeedDial Fab when the SpeedDial is open.
slotProps { transition?: func | object } {} The props used for each slot inside.
slots { transition?: elementType } {} The components used for each slot inside.
sx Array<func | object | bool> | func | object - The system prop that allows defining system overrides as well as additional CSS styles. See the sx page for more details.
TransitionComponent elementType Zoom* @deprecated The component used for the transition. Follow this guide to learn more about the requirements for this component.
transitionDuration number | { appear?: number, enter?: number, exit?: number } { enter: theme.transitions.duration.enteringScreen, exit: theme.transitions.duration.leavingScreen } The duration for the transition, in milliseconds.
TransitionProps object - Props applied to the transition element.

The ref is forwarded to the root element.

Theme default props

You can use MuiSpeedDial to change the default props of this component with the theme.

Slot name Class name Default component Description
transition - {} The component that renders the transition.

CSS Classes

Class name Rule name Description
.MuiSpeedDial-actions actions Styles applied to the actions (children wrapper) element.
.MuiSpeedDial-actionsClosed actionsClosed Styles applied to the actions (children wrapper) element if open={false}.
.MuiSpeedDial-directionDown directionDown Styles applied to the root element if direction=“down”
.MuiSpeedDial-directionLeft directionLeft Styles applied to the root element if direction=“left”
.MuiSpeedDial-directionRight directionRight Styles applied to the root element if direction=“right”
.MuiSpeedDial-directionUp directionUp Styles applied to the root element if direction=“up”
.MuiSpeedDial-fab fab Styles applied to the Fab component.
.MuiSpeedDial-root root Styles applied to the root element.

You can override the style of the component using:

Source code

If you did not find the information in this page, consider having a look at the implementation of the component for more detail.