Box就绪 Storybook
从 v10.2.3 版本开始可用
概述
Box 组件是最基础的布局组件。它可以用于构建更复杂的组件和布局,其属性使用了我们的设计令牌。
何时使用
应使用 Box 组件替代类样式,以便我们可以利用设计令牌。它可以用于从为组件添加边距到为某个部分添加边框等任何用途。
属性
间距
margin 和 padding 属性分别用于在 box 周围或内部添加空间。margin 有 7 种不同的属性:margin、marginX、marginY、marginTop、marginRight、marginBottom 和 marginLeft。类似地,padding 有 7 种不同的属性:padding、paddingX、paddingY、paddingTop、paddingRight、paddingBottom 和 paddingLeft。可能的值:ThemeSpacingTokens (0 | 0.25 | 0.5 | 1 | 1.5 | 2 | 2.5 | 3 | 4 | 5 | 6 | 8 | 10)
加载中...
实时编辑器
<Box margin={1} marginY={2} marginTop={3} padding={1} paddingY={2} paddingTop={3} borderStyle='solid' borderColor='strong'> Content </Box>
外观
Box 的样式可以使用以下 5 个属性定义
borderColor,可能的值:weak、medium、strong、error、success、warning、infoborderStyle,可能的值:solid、dashedborderRadius,可能的值:default、pill、circlebackgroundColor,可能的值:canvas、primary、secondary、error、success、warning、infoboxShadow,可能的值:z1、z2、z3
加载中...
实时编辑器
<Box borderRadius='pill' borderStyle='dashed' borderColor='strong' backgroundColor='warning' boxShadow='z1'> Content </Box>
显示
有 4 个与内容显示方式相关的属性
display,可能的值:flex、block、inline、nonealignItems,可能的值:stretch、flex-start、flex-end、center、baseline、start、end、self-start、self-endjustifyContent,可能的值:flex-start、flex-end、center、space-between、space-around、space-evenly、start、end、left、rightgap,可能的值:ThemeSpacingTokens (0 | 0.25 | 0.5 | 1 | 1.5 | 2 | 2.5 | 3 | 4 | 5 | 6 | 8 | 10)
如果您只需要创建一个 Flex 布局,而无需对 box 进行其他样式设置,请改用Stack 组件。
加载中...
实时编辑器
<Box display='flex' alignItems='center' justifyContent='center' gap={5}> <span>One</span> <span>Two</span> </Box>
响应性
所有上述属性都可以以响应式方式定义,这意味着会根据窗口大小设置不同的值。
要以响应式方式定义其中任何属性,只需传入一个以响应式断点作为键的对象即可。例如,不要像 margin={5} 这样定义 margin,而是定义为 margin={{ xs: 3, md: 5 }}。这意味着从 xs 断点开始,margin 设置为 3;而从 md 断点开始,则设置为 5。
主题中可能的断点可以在此处找到。