一个可展开/折叠面板的交互组件。
import * as React from "react";import { Collapsible } from "radix-ui";import { RowSpacingIcon, Cross2Icon } from "@radix-ui/react-icons";import "./styles.css";const CollapsibleDemo = () => {const [open, setOpen] = React.useState(false);return (<Collapsible.Root className="CollapsibleRoot" open={open} onOpenChange={setOpen} ><div style={{ display: "flex", alignItems: "center", justifyContent: "space-between", }} ><span className="Text" style={{ color: "white" }}>@peduarte starred 3 repositories</span><Collapsible.Trigger asChild><button className="IconButton">{open ? <Cross2Icon /> : <RowSpacingIcon />}</button></Collapsible.Trigger></div><div className="Repository"><span className="Text">@radix-ui/primitives</span></div><Collapsible.Content><div className="Repository"><span className="Text">@radix-ui/colors</span></div><div className="Repository"><span className="Text">@radix-ui/themes</span></div></Collapsible.Content></Collapsible.Root>);};export default CollapsibleDemo;
完全键盘导航。
可以为受控或非受控。
从命令行安装组件。
导入组件并将各个部分组合在一起。
包含所有可折叠组件的部分。
用于切换可折叠组件的按钮。
包含可折叠内容的组件。
使用 --radix-collapsible-content-width
和/或 --radix-collapsible-content-height
CSS 变量在内容展开/关闭时对其大小进行动画处理。以下是演示: