跳至主要内容
版本:v8

ion-fab

阴影

Fabs 是包含一个或多个 fab 按钮 的容器元素。它们应该放置在固定位置,不会随着内容滚动。Fabs 应该有一个主要的 fab 按钮。Fabs 也可以包含一个或多个 fab 列表,其中包含在单击主要 fab 按钮时显示的相关按钮。

基本用法

列表侧边

fab 列表 组件的 side 属性控制它相对于主要 fab 按钮的位置。只要它们对 side 都有不同的值,单个 fab 就可以有多个 fab 列表。

定位

为了将 fab 放在固定位置,它应该被分配到外部 内容 组件的 fixed 插槽。使用 verticalhorizontal 属性控制 fab 在视窗中的对齐方式。edge 属性将导致 fab 按钮与应用程序的页眉或页脚重叠。

安全区域

如果没有 ion-headerion-footer 组件,fab 可能会被设备的凹槽、状态栏或其他设备 UI 遮挡。在这种情况下,不会考虑顶部和底部的 安全区域。这可以通过使用 --ion-safe-area-(dir) 变量 进行调整。

当将 fab 与 vertical 设置为 "top" 但没有 ion-header 一起使用时,需要设置顶部边距

ion-fab {
margin-top: var(--ion-safe-area-top, 0);
}

当将 fab 与 vertical 设置为 "bottom" 但没有 ion-footer 一起使用时,需要设置底部边距

ion-fab {
margin-bottom: var(--ion-safe-area-bottom, 0);
}

如果有 ion-header(对于 vertical 设置为 "top" 的 fab)或 ion-footer(对于 vertical 设置为 "bottom" 的 fab),则不需要进行 CSS 调整,因为 fab 会相对于页眉或页脚进行定位。

相对于无限列表

在视图包含许多交互式元素(例如无限滚动的列表)的情况下,如果浮动操作按钮 (FAB) 被放置在 DOM 中所有项目下方,用户可能难以导航到它。

通过将 内容 上的 fixedSlotPlacement 属性设置为 before,FAB 将放置在 DOM 中主要内容之前。这将确保 FAB 在其他交互式元素获得焦点之前获得键盘焦点,使用户更容易访问 FAB。

按钮大小

将主要 fab 按钮的 size 属性设置为 "small" 将以迷你大小渲染它。请注意,此属性在与内部 fab 按钮一起使用时无效。

主题

颜色

CSS 自定义属性

CSS 阴影部件

可访问性

标签

由于 FAB 只能包含图标,因此开发人员必须在每个 ion-fab-button 实例上提供 aria-label。如果没有这个标签,辅助技术将无法宣布每个按钮的目的。

属性

activated

描述如果为 trueion-fab-buttonion-fab 中的所有 ion-fab-list 都将变为活动状态。这意味着 ion-fab-button 将变为 close 图标,而 ion-fab-list 将变为可见状态。
属性activated
类型boolean
默认值false

edge

描述如果为 true,fab 将在 vertical"top" 时显示在页眉的边缘,而在 vertical"bottom" 时显示在页脚的边缘。应与 fixed 插槽一起使用。
属性edge
类型boolean
默认值false

horizontal

描述在视窗中水平对齐 fab 的位置。
属性horizontal
类型"center" | "end" | "start" | undefined
默认值undefined

vertical

描述在视窗中垂直对齐 fab 的位置。
属性vertical
类型"bottom" | "center" | "top" | undefined
默认值undefined

事件

此组件没有可用事件。

方法

close

描述关闭活动的 FAB 列表容器。
签名close() => Promise<void>

CSS 阴影部件

此组件没有可用 CSS 阴影部件。

CSS 自定义属性

此组件没有可用 CSS 自定义属性。

插槽

此组件没有可用插槽。