Version: Unity 6.0 (6000.0)
语言 : 中文
样式 UI
USS 选择器

USS 简介

Unity 样式表 (USS) 是被视为支持样式规则的资源的文本文件。USS 文本文件必须具有 .uss 扩展名。

您可以使用 USS 文件来定义游戏和应用程序中__ UI__(即用户界面,User Interface)让用户能够与您的应用程序进行交互。Unity 目前支持三种 UI 系统。更多信息
See in Glossary
元素的外观和样式。USS 提供了一种将 UI 元素的外观和样式与代码的其余部分分离的方法,从而更易于管理和维护应用程序的外观。

使用 USS,您可以在单独的 USS 文件中定义按钮、标签、图像和其他 UI 元素的样式,然后在游戏或应用程序代码中应用这些样式。这样就可以通过修改 USS 文件来更改应用程序的外观,而无需更改代码。

USS 由以下部分组成:

  • 样式规则,包括选择器和声明块。
  • 选择器,用于确定样式规则影响的视觉元素。
  • 声明块,用花括号括起来,包含一个或多个样式声明。每个样式声明都由属性和值组成。每个样式声明以分号结尾。

语法

样式规则的一般语法如下:

selector {
  property1: value;
  property2: value;
}

样式与规则匹配

定义样式表时,可以将其应用于视觉树。选择器将与元素进行对比,从而解析从 USS 文件应用的属性。如果选择器与元素匹配,则样式声明将应用于元素。

例如,以下规则会匹配任何 Button 对象:

Button {
  width: 200px;
}

支持的选择器类型

USS 支持多种类型简单和复杂的选择器,根据不同条件匹配元素,如下所示:

  • 元素 C# 类型名称
  • 指定的 name 属性
  • USS 类的列表
  • 元素在视觉树中的位置及其与其他元素的关系

USS 还支持伪类,可与选择器一起使用以定位处于特定状态的元素或选择 :root 元素。

如果一个元素匹配多个选择器,USS 会应用优先选择器中的样式。

注意:所有选择器都区分大小写。

简单选择器

USS 支持一组简单的选择器,它们类似于 CSS 中的简单选择器,但不完全相同。下表提供了 USS 简单选择器的快速参考。

选择器类型 语法 匹配
类型选择器 Type {...} 特定 C# 或视觉元素类型的元素。
类选择器 .class {...} 具有指定 USS 类的元素。
名称选择器 #name {..} 具有指定 name 属性的元素。
通用选择器 * {...} 任何元素。

复杂选择器

USS 支持 CSS 复杂选择器的子集。下表提供了 USS 复杂选择器的快速参考。

选择器类型 语法 匹配
后代选择器 selector1 selector2 {...} 作为视觉树中另一个元素的后代的元素。
子选择器 selector1 > selector2 {...} 作为视觉树中另一个元素的子元素的元素。
多重选择器 selector1selector2 {...} 匹配所有简单选择器的元素。

将样式连接到元素

可使用以下方法将样式连接到元素:

  • 在 UI Builder 中,使用内联样式或 USS 选择器对元素进行样式设置。更多信息,请参阅使用 UI Builder 设置 UI 样式
  • 在 UXML 中,可以使用内联样式为元素设置样式,或者附加一份包含与该元素匹配的选择器的样式表。更多信息,请参阅向 UXML 添加样式
  • 在 C# 脚本中,将样式直接设置为 style 属性,或使用与元素匹配的选择器将 USS 样式表添加到 styleSheet 属性。更多信息,请参阅在 C# 脚本中应用样式

其他资源

样式 UI
USS 选择器