外部 CSS の使用
静的リソースとしてアップロードした外部 CSS リソースを参照するには、.cmp または .app マークアップで <ltng:require> タグを使用します。
次に <ltng:require> の使用例を示します。
1<ltng:require styles="/resource/resourceName" />resourceName は、静的リソースの [名前] です。フレームワークは現在、Visualforce で使用可能な $Resource グローバル変数をサポートしていません。管理パッケージでは、リソース名にパッケージ名前空間プレフィックス (/resource/np_resourceName など) を含める必要があります。
次に、スタイルの読み込みに関する考慮事項を示します。
- CSS のセットの読み込み
- CSS のセットを読み込むには、styles 属性でリソースのカンマ区切りのリストを指定します。
- 読み込み順序
- スタイルはリストの順序で読み込まれます。
- 1 回のみの読み込み
- 同じコンポーネントまたは異なるコンポーネントの複数の <ltng:require> タグでスタイルが指定されていても、スタイルが読み込まれるのは 1 回のみです。
- カプセル化
- カプセル化と再利用性を確保するには、CSS リソースを使用するすべての .cmp または .app リソースに <ltng:require> タグを追加します。
<ltng:require> には、JavaScript ライブラリのリストを読み込む scripts 属性もあります。afterScriptsLoaded イベントを使用すると、scripts の読み込み後にコントローラアクションをコールできます。これは scripts を読み込むことによってのみトリガされ、styles の CSS が読み込まれたときにトリガされることはありません。
静的リソースについての詳細は、Salesforce オンラインヘルプの「静的リソースとは?」を参照してください。
Salesforce1 のスタイルコンポーネント
Salesforce1 でのスタイルの競合を回避するには、外部 CSS に一意の名前空間プレフィックスを追加します。たとえば、外部 CSS 宣言に .myBootstrap をプレフィックスとして追加する場合、myBootstrap クラスを指定する <div> タグでコンポーネントマークアップを囲みます。
1<ltng:require styles="/resource/bootstrap"/>
2<div class="myBootstrap">
3 <c:myComponent />
4 <!-- Other component markup -->
5</div>