桌子
该表用于直观显示任何大小的结构化数据。
表中的原子元素是细胞。单元格在表中形成列和行。表格总是有标题。
§表格单元格
单元格是位于表格行和列交叉点的容器,可以在其中放置其他组件:
单个单元格可以包含单个组件(例如文本),也可以包含多个组件(例如,复选框、文本和图标)。
如果单元格中没有要显示的数据,则该单元格可以为空。此外,单元格内容可以在其正常状态下隐藏,当您将鼠标悬停在单元格或行上时变得可见。
§组件使用建议
- 不要在一个单元格中使用超过三个不同的组件:这会使包含此类单元格的列中的数据更难比较,并且会降低表格的可读性。在这种情况下,您可以为每个组件描述的属性创建单独的列。
- 根据您当前的任务在表格中选择组件大小。对于纯文本数据,最好使用不带装饰的 text-body-1 样式;对于其他元素,使用大小 M。
- 我们建议在单元格内使用相同大小的组件,例如大小为 M 的标签和按钮。
§单元格的高度和宽度
像元大小由其内容和单元格填充的大小决定。
单行文本(样式为 text-subheader-1(行距 18px))的标准单元格高度为 40 像素。在这种情况下,顶部和底部的单元格填充均为 11px。
对于包含两行文本的单元格,单元格高度为 58px。
可以在顶部、底部、左侧和右侧使用任何填充,但我们建议使用 4px 倍数的填充系统。顶部和底部的填充通常相同,但您可以将它们设置为不同。这同样适用于左右填充(有关更多详细信息,请参阅表中行和列的描述)。顶部和底部的填充不必等于左边和右边的边距。
§分隔符
每个单元格的水平分隔符高度为 1px。此分隔符与单元格的底部边缘对齐,其宽度等于单元格宽度。您可以省略表格中最后一行的单元格的分隔符。
§对齐
单元格内的内容可以左对齐或右对齐(有关文本对齐的更多详细信息,请参阅列描述)。
§表格 标题
表格标题位于表格顶部,包含列名。除了名称,标题还可以包含复选框和按钮。
避免使用两行列名以防止换行。当名称换行到第二行和其他行时,标题的高度会增加。在这种情况下,其他名称和按钮保持与顶部对齐。
§表格列
列是一组垂直排列的单元格。根据单元格中内容的类型,列中的数据可以是:
- 已排序
- 右对齐
§排序
如果可以对列中的数据进行排序(例如,按字母顺序、按时间或按大小排序),则会在列名称旁边放置一个箭头图标。当用户点击图标名称时,行按此列排序。
排序是表格中的一项可选功能。它适用于特定的用例。
您不能按两列并行对表进行排序。
通常,如果可以对列中的数据进行排序,则此类数据应具有相同的测量单位。为避免在每个列单元格中指定单位,请使用逗号将其添加到列名中。
§右对齐的内容
此功能仅适用于文本数据,用于比较数据(例如,花费的时间或消耗的资源)。此类数据通常具有相同的单位,您可以对其进行排序。对于带有排序箭头的右对齐列数据,请先放置箭头,然后放置文本。
§滚动时列锁定
如果表格不适合屏幕边界,则会出现水平滚动条。在这种情况下,您可以锁定某些表格列,使其始终显示在屏幕上。您可以锁定表格的第一列或最后一列。您可以使用任意数量的锁定列,但考虑到支持的最小视口宽度,请确保有足够的空间容纳滚动列。
锁定后,这些列单元格会得到一个额外的分隔符:如果列处于左锁状态,则该分隔符位于右侧;如果列处于右锁状态,则将其放置在左侧。此分隔符将限制其他单元格的滚动。
在最右边的列中,您可以为一行添加操作。可以在三点图标下访问这些操作,该图标会展开为一个列表。在滚动时锁定此列,这样用户就可以随时访问这些操作。将齿轮图标放在此类列的标题中,单击该图标会打开表格列配置。
§列设置
用户可以自定义列的数量和顺序。为此,在最后一个表格列的标题中添加一个齿轮图标。当用户点击齿轮图标时,会出现一个设置弹出窗口。
§表格行
一行是一组水平排列的单元格。
§可点击的行
当用户点击表格行时,他们可以被定向到另一个页面、模态窗口或侧边栏。将鼠标悬停在这些行上时,背景颜色会变为--g-color-base-simple-hover。
要更简洁地显示悬停在可点击的表格行上,可以在左右两侧添加小边距。有了这些边距,内容就不再与网格对齐了。因此,我们不建议在没有悬停的情况下使用这些边距。
§具有批量操作的行
您可以对第一个单元格包含复选框的行应用批量操作。一组组操作通常将单个操作集与一个表格行相匹配。
如果选择了一行,则其背景颜色将更改为--g-color-base-selection,页面底部会出现一个包含群组操作列表的操作栏。
如果不同的表格行有不同的操作可用,我们建议仅在操作栏中显示适用于所有选定行的操作。其他行为可以由设计人员自行决定是否启用。
§内容对齐
对于单元格高度大于 40px 的行,内容可以在单元格中顶部对齐或居中。
最好使用顶部对齐,因为它可以提高数据的可读性。在这种情况下,所有包含文本的组件都应与第一行对齐。
如果顶部对齐的行包含图标、用户头像、图标按钮、复选框、进度条和其他非文本元素,请设置其顶部边距,使其水平轴与单行单元格中的文本轴相匹配。
当难以微调一行中所有类型内容的单元格顶部边距时,或者当对齐不影响内容的可读性时,您可以使用居中对齐。
§用法建议
使用表格:
- 组织大量描述对象属性的同类数据。
- 对页面上的数据进行排序和比较。
- 通过对表格内容进行排序、筛选和扫描来快速查找值。
我们不建议:
- 使用表格来描述具有单一属性的对象。对于这种情况,清单是更好的选择。 例如,您应该使用列表来显示有关颜色名称及其十六进制编码的信息。
- 使用表格描述具有不同异构属性的对象。在这种情况下,最好单独描述每个对象。 举个例子,你的任务是描述员工使用的设备。此类设备可以包括笔记本电脑(属性:操作系统、存储容量、屏幕尺寸)、计算机鼠标(属性:有线或无线)和台灯(属性:制造商、支架类型)。不要将所有这些数据添加到单个表中,并尝试想出不同的可视化方法。