Version: Unity 6.0 (6000.0)
言語 : 日本語
UI のスタイル設定
USS セレクター

USS とは

Unity スタイルシート (USS) は、スタイルルールをサポートするアセットとして認識されるテキストファイルです。USS テキストファイルには .uss 拡張子が必要です。

USS ファイルを使用して、ゲームやアプリケーションの UI 要素の外観とスタイルを定義できます。USS によって UI 要素の外観とスタイルをコードの他の部分から分離でき、アプリケーションのルックアンドフィールの管理と維持が容易になります。

USS を使用すると、ボタン、ラベル、画像などの UI 要素のスタイルを別の USS ファイルで定義し、ゲームまたはアプリケーションコードに適用することができます。これにより、コードに変更を加えなくても、USS ファイルを変更してアプリケーションの外観を変更できます。

USS は以下のように構成されています。

  • セレクターと宣言ブロックを含むスタイルルール。
  • どのビジュアル要素がスタイルルールに影響するかを識別するセレクター。
  • 1 つ以上のスタイル宣言のある、中括弧で囲まれた宣言ブロック。各スタイル宣言は、プロパティと値を含み、セミコロンで終わります。

構文

以下はスタイルルールの一般的な構文です。

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 セレクター