当一个元素匹配多个选择器时,Unity 会考虑几个因素来确定哪个选择器优先。
Unity 如何确定优先级取决于冲突的选择器是在同一个样式表中还是在不同的样式表中。
如果一个元素匹配同一样式表中的多个选择器,则具有最高特异性的选择器优先。
如果两个选择器具有相同的特异性,USS 文件中最后出现的选择器优先。
当一个元素匹配不同样式表中的多个选择器时,Unity 会根据以下因素按此顺序确定优先级:
选择器特异性是相关性的度量。特异性越高,选择器与其匹配的元素越相关。
*) 选择器特异性高。您可以通过以下方式在__ UI__(即用户界面,User Interface)让用户能够与您的应用程序进行交互。Unity 目前支持三种 UI 系统。更多信息
See in Glossary 工具包中设置元素的样式:
如果将多种样式方法应用于元素,则会对其进行样式覆盖。
直接针对元素的样式优先于元素继承的样式,即使继承的样式是在具有更高特异性的选择器中定义的。
应用于 UXML 文档中元素的内联样式优先于 USS 样式。它们比 USS 选择器具有更高的特异性。
注意:USS 不支持用于覆盖 CSS 中的样式声明的 !important 规则。
在 C# 脚本中设置的样式会覆盖 UXML 文档中设置的 USS 样式和内联样式。它们具有最高的特异性。