Semantic UI 的表格集合提供了一个全面的系统,用于显示具有语义化样式的表格数据。本文档涵盖了 Semantic UI 中表格的结构、变体、状态和响应式行为。
有关表单等其他集合的信息,请参阅 表单集合,有关网格系统的信息,请参阅 网格系统。
Semantic UI 表格通过额外的样式和功能增强了标准的 HTML 表格标记。最基本的是,使用 .ui.table 类来创建表格。
来源: src/definitions/collections/table.less26-44 src/definitions/collections/table.less50-54
表格的基本样式包括宽度、背景、边距、边框、盒阴影、边框半径、文本对齐和颜色属性。样式通过 LESS 变量实现,以便于主题化。
表格标题使用 thead 和 th 元素,并通过以下方式使其区别于表格主体:
来源: src/definitions/collections/table.less57-86
表格主体包含行(tr)和包含数据内容的单元格(td)。每个单元格具有
来源: src/definitions/collections/table.less118-134
表格页脚(tfoot)提供了一个用于汇总信息的地方,具有
来源: src/definitions/collections/table.less89-115
Semantic UI 为不同的展示需求提供了多种表格类型
来源: src/definitions/collections/table.less220-298 src/definitions/collections/table.less1001-1055
定义表格突出显示第一列,使其成为显示键值对的理想选择
第一列获得特殊的样式,具有
来源: src/definitions/collections/table.less250-298
斑马纹表格为行应用交替的背景颜色,以提高可读性
来源: src/definitions/collections/table.less603-618
单元格表格在所有单元格之间添加边框,以更清晰地分隔数据
来源: src/definitions/collections/table.less1048-1055
这些变体调整单元格内边距
| 变体 | 类 | 目的 |
|---|---|---|
| 带内边距 | .ui.padded.table | 增加单元格内边距 |
| 非常带内边距 | .ui.very.padded.table | 进一步增加单元格内边距 |
| 紧凑 | .ui.compact.table | 减小单元格内边距 |
| 非常紧凑 | .ui.very.compact.table | 进一步减小单元格内边距 |
来源: src/definitions/collections/table.less1061-1098
表格支持文本和垂直对齐变体
| 对齐 | 类 | 效果 |
|---|---|---|
| 左侧 | .ui.left.aligned.table | 单元格文本左对齐 |
| 中心 | .ui.center.aligned.table | 单元格文本居中对齐 |
| 右侧 | .ui.right.aligned.table | 单元格文本右对齐 |
| 顶部 | .ui.top.aligned.table | 单元格顶部内容对齐 |
| 中间 | .ui.middle.aligned.table | 单元格中部内容对齐 |
| 底部 | .ui.bottom.aligned.table | 单元格底部内容对齐 |
也可以为单个单元格应用这些对齐类。
来源: src/definitions/collections/table.less440-468
| 变体 | 类 | 目的 |
|---|---|---|
| 固定 | .ui.fixed.table | 使用 table-layout: fixed 来实现一致的列宽和文本截断 |
| 折叠 | .ui.collapsing.table | 表格宽度根据内容调整,而不是填满容器 |
来源: src/definitions/collections/table.less474-492 src/definitions/collections/table.less993-995
表格提供不同的文本大小
| 大小 | 类 | 效果 |
|---|---|---|
| 小型 | .ui.small.table | 较小的文本 (0.9em) |
| 默认 | .ui.table | 正常文本 (1em) |
| 大型 | .ui.large.table | 较大的文本 (1.1em) |
来源: src/definitions/collections/table.less1105-1117 src/themes/default/collections/table.variables245-247
表格可以带有彩色边框或背景
支持的颜色包括:红色、橙色、黄色、橄榄色、绿色、青色、蓝色、紫罗兰色、紫色、粉色、棕色、灰色和黑色。
来源: src/definitions/collections/table.less637-752
行和单元格可以有各种状态来指示其状态
使用示例
状态添加适当的背景颜色、文本颜色和盒阴影以指示状态。
来源: src/definitions/collections/table.less304-386
可选中的表格在鼠标悬停时高亮显示行或单元格
单元格也可以单独选择
来源: src/definitions/collections/table.less499-550
可排序表格允许进行列排序,并带有适当的指示符
排序功能提供
来源: src/definitions/collections/table.less879-949
Semantic UI 表格默认是响应式的,在移动断点处进行转换
在堆叠模式下
来源: src/definitions/collections/table.less157-200 src/definitions/collections/table.less396-434
Semantic UI 允许指定列数和宽度
支持从一到十六的列数,它们会自动为所有列设置相等的宽度。
来源: src/definitions/collections/table.less760-807
为了更精细的控制,可以为单个列指定特定的宽度
支持从一到十六个单位的列宽,使用与 Semantic UI 其他组件相同的网格系统。
来源: src/definitions/collections/table.less810-873
表格可以附加到其他元素或彼此上
附件变体包括
.attached (四周都附加).top.attached (顶部附加).bottom.attached (底部附加)来源: src/definitions/collections/table.less559-596
表格样式可以使用主题系统中定义的变量进行自定义。主变量文件是 src/themes/default/collections/table.variables,其中包含
| 类别 | 示例变量 | 目的 |
|---|---|---|
| 元素 | @background, @color, @border | 基本表格外观 |
| 组成部分 | @cellVerticalPadding, @headerBackground | 特定部分样式 |
| 类型 | @definitionHeaderBackground, @stripedBackground | 类型特定外观 |
| 状态 | @positiveColor, @negativeBackgroundHover | 状态样式和悬停效果 |
| 响应式 | @responsiveRowBoxShadow, @responsiveCellPadding | 移动设备外观 |
文件之间的关系如下图所示
来源: src/definitions/collections/table.less11-19 src/themes/default/collections/table.variables1-248
此示例创建一个表格,该表格