Unity3D :创建 USS 变量
推荐:将NSDT场景编辑器加入你的3D工具链
3D工具集:NSDT简石数字孪生
创建 USS 变量
您可以创建一个 USS 变量并在其他 USS 属性中使用它。更新 USS 变量时,使用该变量的所有 USS 属性都会更新。您还可以为 USS 变量指定默认值。
创建和使用 USS 变量
要创建 USS 变量,请在其名称前面加上双连字符 ()。--
--color-1: red;
若要在另一个 USS 规则中使用 USS 变量值,请使用函数调用它。var()
var(--color-1);
更新变量时,它会更新使用该变量的所有 USS 属性。
例如,以下 USS 代码段定义了一个声明两个颜色变量的样式规则,以及两个使用这些变量的样式规则。
:root {
--color-1: blue;
--color-2: yellow;
}
.paragraph-regular {
color: var(--color-1);
background: var(--color-2);
padding: 2px;
}
.paragraph-reverse {
color: var(--color-2);
background: var(--color-1);
padding: 2px;
}
要更新配色方案,可以更改两个变量值而不是四个颜色值。
变量使管理复杂样式变得更加容易用户界面
,其中多个规则(有时位于不同的样式表中)使用相同的值。
指定 USS 变量的默认值
该函数接受可选的默认值。UI 系统在无法解析变量时使用默认值。例如,如果从样式表中删除变量,但忘记删除对该变量的引用。var()
要指定变量的默认值,请将其添加到变量值之后,用逗号分隔。,
以下 USS 代码段调用该变量。如果 UI 系统无法解析变量,它将使用红色 () 的十六进制值。--color-1#FF0000
var(--color-1, #FF0000);
与 CSS 变量的区别
变量在USS中的工作方式与在CSS中的工作方式大致相同。有关 CSS 变量的详细信息,请参阅 MDN 文档。但是,USS 不支持 CSS 的一些功能:
- USS 不支持其他函数中的函数,如下所示:
var()
background-color: rgb(var(--red), 0, 0);
- USS 不支持对变量进行数学运算。
由3D建模学习工作室整理翻译,转载请注明出处!