Bulma 中的布局组件为构建响应式页面布局提供了结构基础。这些组件有助于在不同屏幕尺寸上以一致且视觉上吸引人的方式组织和排列内容。与关注用户交互的 UI 组件(请参阅 UI 组件)不同,布局组件主要处理内容的空间组织。
Bulma 提供了六个主要的布局组件,它们协同工作以创建灵活的页面结构
来源
container 是一个简单的实用元素,它会在其父元素内水平居中内容。它具有响应式最大宽度,该宽度根据视口大小而变化。
容器的默认行为
| 修饰类 | 行为 |
|---|---|
is-fluid (流体) | 始终全宽度,两侧各有 32px 的外边距 |
is-widescreen (宽屏) | 在宽屏断点之前保持全宽度 |
is-fullhd (超宽屏) | 在超宽屏断点之前保持全宽度 |
is-max-desktop (最大桌面宽度) | 在所有更大的屏幕上都具有桌面尺寸的最大宽度 (960px) |
is-max-widescreen (最大宽屏宽度) | 在所有更大的屏幕上都具有宽屏尺寸的最大宽度 (1152px) |
is-max-tablet (最大平板宽度) | 在所有更大的屏幕上都具有平板电脑尺寸的最大宽度 (768px) |
来源
hero 组件创建全宽横幅,可以选择覆盖整个视口高度。它通常用于引人注目的标题或部分。
基本的英雄区块结构需要
hero 作为主容器hero-body 作为直接子元素,包含主要内容对于全高英雄区块,您可以添加
hero-head 用于固定在顶部的内容hero-foot 用于固定在底部的内容is-primary、is-link、is-info、is-success、is-warning、is-danger、is-light、is-darkis-small、is-medium、is-largeis-halfheight、is-fullheightis-fullheight-with-navbar - 考虑固定导航栏来源
section 组件为内容块提供了一致的内边距。它通常用作 body 元素的直接子元素,将页面划分为不同的区域。
section 组件有三种尺寸
is-medium - 更多内边距 (上下 9rem)is-large - 最大内边距 (上下 18rem)来源
footer 组件是一个简单的容器,具有充足的底部内边距,旨在作为网页的最后一个元素。
页脚通常包含
来源
level 组件是一个水平对齐系统,可垂直居中其子元素。它适用于导航栏、表单控件或任何需要水平对齐并垂直居中的内容。
级别组件有两种结构
并列级别:
level 作为主容器level-left 用于左对齐内容level-right 用于右对齐内容level-item 位于左右容器内部居中级别:
level 作为主容器level-item 作为直接子元素(无左右容器)修饰符 is-mobile 在移动设备上保持水平布局(否则会垂直堆叠)。
来源
media 对象是一个通用的组件,用于可重复嵌套的内容布局。它特别适用于评论线程、用户列表或通知系统。
媒体对象由以下部分组成
media 作为主容器media-left 通常用于图像或图标(可选)media-content 用于主要内容区域media-right 用于右对齐内容,如按钮(可选)媒体对象可以嵌套多达三层,使其成为线程评论或回复的理想选择。
来源
所有布局组件都设计为在不同视口尺寸下具有响应性
| 组件 | 移动设备行为 | 平板电脑及以上行为 |
|---|---|---|
| 容器 | 全宽度 | 基于断点的响应式最大宽度 |
| Hero (英雄区块) | 全宽度(全高时为垂直) | 全宽度(保持高度设置) |
| 章节 | 标准内边距 | 标准内边距 |
| 页脚 | 标准内边距 | 标准内边距 |
| 复杂度 | 垂直堆叠 | 水平对齐(除非使用了 is-mobile 修饰符) |
| 媒体对象 | 保持结构 | 保持结构 |
来源
布局组件通常以可预测的模式组合使用
hero、section 或 footercontainer 以控制内容宽度level 进行水平对齐或使用 media 进行可重复内容布局title、subtitle 或 content 等内容元素来源
Bulma 的布局组件为构建网页提供了一个全面的系统。它们遵循逻辑层次结构
hero、section 和 footer 提供主要的页面结构container 控制内容宽度和居中level 和 media 在容器内提供中间结构这种组织方式可以轻松实现一致、响应式的布局。
来源