A container for grouping a set of controls, such as buttons, toggle groups or dropdown menus.
import React from 'react';import * as Toolbar from '@radix-ui/react-toolbar';import { StrikethroughIcon, TextAlignLeftIcon, TextAlignCenterIcon, TextAlignRightIcon, FontBoldIcon, FontItalicIcon, } from '@radix-ui/react-icons';import './styles.css';const ToolbarDemo = () => (<Toolbar.Root className="ToolbarRoot" aria-label="Formatting options"><Toolbar.ToggleGroup type="multiple" aria-label="Text formatting"><Toolbar.ToggleItem className="ToolbarToggleItem" value="bold" aria-label="Bold"><FontBoldIcon /></Toolbar.ToggleItem><Toolbar.ToggleItem className="ToolbarToggleItem" value="italic" aria-label="Italic"><FontItalicIcon /></Toolbar.ToggleItem><Toolbar.ToggleItem className="ToolbarToggleItem" value="strikethrough" aria-label="Strike through" ><StrikethroughIcon /></Toolbar.ToggleItem></Toolbar.ToggleGroup><Toolbar.Separator className="ToolbarSeparator" /><Toolbar.ToggleGroup type="single" defaultValue="center" aria-label="Text alignment"><Toolbar.ToggleItem className="ToolbarToggleItem" value="left" aria-label="Left aligned"><TextAlignLeftIcon /></Toolbar.ToggleItem><Toolbar.ToggleItem className="ToolbarToggleItem" value="center" aria-label="Center aligned"><TextAlignCenterIcon /></Toolbar.ToggleItem><Toolbar.ToggleItem className="ToolbarToggleItem" value="right" aria-label="Right aligned"><TextAlignRightIcon /></Toolbar.ToggleItem></Toolbar.ToggleGroup><Toolbar.Separator className="ToolbarSeparator" /><Toolbar.Link className="ToolbarLink" href="#" target="_blank" style={{ marginRight: 10 }}>Edited 2 hours ago</Toolbar.Link><Toolbar.Button className="ToolbarButton" style={{ marginLeft: 'auto' }}>Share</Toolbar.Button></Toolbar.Root>);export default ToolbarDemo;
Full keyboard navigation.
Install the component from your command line.
Import the component.
Contains all the toolbar component parts.
A button item.
A link item.
A set of two-state buttons that can be toggled on or off.
An item in the group.
Used to visually separate items in the toolbar.
All our primitives which expose a Trigger
part, such as Dialog
, AlertDialog
, Popover
, DropdownMenu
can be composed within a toolbar by using the asChild
prop.
Here is an example using our DropdownMenu
primitive.
Uses roving tabindex to manage focus movement among items.