直接跳到内容

FlexBox 弹性布局

FlexBox是一种基于CSS Flexbox的列表式布局组件,提供了灵活的内容排列方式,可以自动换行和调整元素布局。

底层实现为panel.layout.FlexBox,参数基本一致,参考文档:https://panel.holoviz.org/reference/layouts/FlexBox.html

基本用法

默认情况下,FlexBox使用direction='row'flex_wrap='wrap',使得元素按行排列并在必要时换行:

列式布局

可以通过设置flex_direction='column'让FlexBox按列排列元素:

元素对齐方式

可以通过align_contentalign_itemsjustify_content控制元素如何在容器中对齐和分布:

API

属性

属性名说明类型默认值
direction主轴方向,决定了flex项目放置的方向String row
flex_direction与direction相同,为了兼容性保留String row
align_content当交叉轴有多余空间时,如何分配行之间的空间String 
align_items定义项目在交叉轴上如何对齐String 
flex_wrap是否允许换行及如何换行String wrap
gap定义flex项目之间的间距String 
justify_content定义项目在主轴上的对齐方式String 
scroll是否启用滚动条Boolean False

Events

事件名说明类型
change当布局内容改变时触发Callable 

Slots

插槽名说明
defaultFlexBox的内容

Controls

src/examples/panel_vuepy/layouts/FlexBox

FlexBox 弹性布局已经加载完毕