UI 风格#

GNOME 中 UI 使用的视觉风格称为 Adwaita。它包括亮色和暗色风格选项,这些选项适用于所有 UI 组件,以及针对单个小部件的一系列风格选项。

亮色和暗色 UI 风格#

GNOME 平台允许应用程序具有亮色或暗色 UI 风格。应用程序可以选择默认使用哪种风格。它们还可以包含一个控件,允许用户在亮色和暗色风格之间切换,并且可以根据系统范围的 UI 风格设置选择亮色和暗色风格。

指南

  • 大多数应用程序应默认使用标准的亮色 UI 风格。但是,应用程序也可以选择默认使用暗色风格。这主要推荐用于显示丰富的视觉内容(如图像或视频)的应用程序。

  • 默认使用亮色 UI 风格的应用程序鼓励遵循系统风格设置,该设置允许用户设置偏好以使用暗色而不是亮色。

  • 每应用程序的风格偏好主要适用于文本编辑应用程序,或用户长时间使用的应用程序。在这些情况下,风格偏好可以作为控制视觉对比度和亮度的有用方式。

  • 在提供每应用程序的风格偏好时,通常应包括三个选项:亮色、暗色和跟随系统偏好。

有关相关 API,请参阅 AdwStyleManager

高对比度模式#

高对比度模式是一种辅助功能,它将 UI 风格更改为具有非常高的对比度。作为应用程序测试的一部分,重要的是使用启用高对比度模式的情况下对其进行测试,以确保它能以这种风格正确渲染。这可以通过使用系统高对比度模式设置或使用 GTK Inspector 来完成。

内置风格选项#

Libadwaita 包含一系列针对单个 UI 元素的视觉风格选项。例如,建议和破坏性风格 更改按钮的颜色,以指示其功能。每个设计模式的 HIG 页面包含有关每个 UI 元素可用风格选项的进一步指导。

Libadwaita 的风格类文档 还提供了一个可用不同风格类的完整列表。

自定义风格#

GTK 和 Libadwaita 可以用作不在 GNOME 平台中包含的自定义 UI 元素的基准。现有小部件的外观也可以自定义。

通常,最好将这种自定义风格的数量保持在最低限度,因为这将减少维护开销,减少错误,并有助于确保与辅助功能和国际化功能的兼容性。

在设计自定义风格时,建议尽可能使用现有的风格类和颜色变量,因为这些变量会自动适应亮色、暗色和高对比度风格。小心不要在它们预期用途之外使用类和变量,因为这可能会导致问题。

Libadwaita 的 CSS 变量风格类 文档可以作为有用的参考。

辅助功能注意事项#

在创建自定义 UI 元素时,在视觉风格方面需要避免一些辅助功能问题

  • 仅使用颜色来区分信息项。相反,所有信息应至少通过另一种方法提供,例如形状、位置或文本描述。

  • 使用闪烁或闪烁的元素,因为这可能会对容易发生视觉诱发癫痫发作的人造成问题。

彻底测试自定义 UI 至关重要。特别是,请务必执行 辅助功能测试 的范围。