USS 数据类型定义了 USS 属性和函数接受的典型值,包括关键字和单位。
USS 属性使用与 W3C CSS 文档相同的语法:
auto、baseline。< 和 >)之间。例如:<length> 和 <color>。<' 和 '>)之间。例如,<'width'>。如果属性值有多个选项,则适用以下选项:
|) 分隔两个或多个选项。必须出现一项。||`) 分隔两个或多个选项:必须出现一项或多项,顺序任意。&&`) 将两个或多个选项分开。必须出现所有选项。[ ]) 表示分组。每个类型、关键字或尖括号组的后面都可以跟修饰符。下表列出了可能的修饰符:
| 修饰符 | 前面的类型、关键字或组 |
|---|---|
星号 (*) |
出现零次或多次 |
加号 (+) |
出现一次或多次 |
问号 (?) |
可选 |
一对数字位于大括号中 ({A,B}) |
至少出现 A 次,最多出现 B 次 |
UI 工具包支持像素 (px) 和百分比 (%) 作为长度的度量单位。像素值是绝对值,而百分比相对于元素父级。
例如:
width:200px; 表示宽度为 200 像素。width:50%; 表示宽度为父元素宽度的一半。务必指定度量单位。如果未指定度量单位,则__ UI__(即用户界面,User Interface)让用户能够与您的应用程序进行交互。Unity 目前支持三种 UI 系统。更多信息
See in Glossary 工具包会假定属性值以像素为单位。
注意:0 是一个不需要度量单位的特殊值。
数值表示为浮点或整数字面值。例如,flex:1.0。
某些内置属性支持特定关键字。关键字提供描述性名称而不是数字。例如:position:absolute。
所有属性都支持 initial 全局关键字,该关键字将重置元素属性的默认值。
在以下示例中,虽然将所有标签的颜色设置为红色,但 color 的 initial 关键字会将 label1 的颜色恢复为其默认值:
/* Set the color of all the labels to red. */
Label {
color: red;
}
/* label1 is the name of a specific label. */
#label1{
color: initial;
}
UI 工具包支持以下字面颜色值和函数:
#FFFF00、#0F0
rgb(255, 255, 0)
rgba(255, 255, 0, 1.0)
您可以从 USS 文件中引用项目资源,例如字体和纹理。例如,您可以引用纹理作为元素的背景图像。
要引用资源,您可使用 url() 或 resource() 函数:
resource():表示 Resources 文件夹中的资源。url():表示通过路径指定的资源。您可将路径表示为相对路径或绝对路径。在大多数情况下使用 url() 函数。但 resource() 函数自动支持为不同的屏幕密度加载不同版本的图像资源。
当您使用 url() 函数引用资源时,指定的路径可以是相对的或绝对的:
路径必须包含文件扩展名。
例如,假设您的项目有一个包含所有样式表的 USS 文件夹,以及一个包含所有图像资源的 Resources 文件夹。
Assets
└─ Editor
└─ Resources
└─ USS
要引用名为 thumb.png 的图像,您可以使用以下路径之一:
| 相对路径 | 绝对路径 |
|---|---|
url("../Resources/thumb.png") |
url("/Assets/Editor/Resources/thumb.png") url("project:/Assets/Editor/Resources/thumb.png") url("project:///Assets/Editor/Resources/thumb.png")
|
resource() 函数可以引用 Unity 的 resource 文件夹(Resources 和 Editor Default Resources)中的资源。您可以通过名称来引用资源。
Editor Default Resources 文件夹中,则必须包含文件扩展名。Resources 文件夹中,则不得包含文件扩展名。例如:
| 文件路径 | 引用语法 |
|---|---|
Assets/Resources/Images/my-image.png |
resource("Images/my-image") |
Assets/Editor Default Resources/Images/my-image.png |
resource("Images/default-image.png") |
要支持具有不同屏幕密度 (DPI) 的屏幕,请执行以下操作:
@2x 后缀。例如,myimage.png 的高 DPI 版本应为 myimage@2x.png
当 Unity 加载资源时,它会自动为当前 DPI 屏幕选择正确的版本。
例如,如果在 USS 中使用 resource("myimage"),Unity 会加载 Resources/myimage.png 或 Resources/myimage@2x.png。
使用引号指定字符串值。例如:--my-property: "foo"。