2016-06-26 12 views
0

@ComponentのAngular 2スタイルを同じタグの複数のクラスで使用するにはどうすればよいですか?角2 @Component Styles

@Component({ 
    styles: `.class1 .class2{background-color:red;}` 
}) 

これは、次のCSSコードを生成します。

.class1[<RANDOM_ANGULAR_ATTR>] .class2[<RANDOM_ANGULAR_ATTR>]{ 
    background-color: red; 
} 

をこれは、次のように定義されたタグを選択しません。

<div class=".class1 .class2" RANDOM_ANGULAR_ATTR></div> 

は、このアプローチの作品を作るための方法はありますか?

答えて

1

スタイルには、クラス間にスペースを入れないでください。同じセレクタ内の複数のクラスは、空白なしで互いに直接書き込まれる必要があります。たとえば、次のように

.class1.class2 { background-color:red; } 

そして、あなたのオブジェクトを選択するために、あなたは、クラスは次のように追加されていなければならない:

<div class="class1 class2">Test css</div> 

は、以下のコードを参照してください:より多くのオプションについては

import { Component } from '@angular/core'; 

@Component({ 
    selector: 'my-app', 
    styles: [ 
` 
.class1.class2{background-color:red}; 
` ], 
    template: ` 
<h1>My First Angular 2 App</h1> 
<div class="class1 class2">Test css</div> 
` 
}) 
export class AppComponent { } 

も見ます次のブログ記事(Shadow DOM、Encapsulation Typesについては他のクールなもの):

  1. https://scotch.io/tutorials/all-the-ways-to-add-css-to-angular-2-components

  2. http://blog.thoughtram.io/angular/2015/06/29/shadow-dom-strategies-in-angular2.html

+0

ありがとうございました!空白を削除すると、本当に私のためのトリックでした! – pascalpuetz

+0

np、あなたは答えplsをマークできますか?乾杯! – Gabi

0

あなたはJustin SchwartzenbergerのNGスタイルのCSSスタイルとランダムに生成されたタグを見ましたか?

  1. 変更カプセル化
  2. は(2を使用して、VS単純な名前のものにそのOKこのコンポーネントへの唯一の関連するので)別のクラスを使用styleUrlsテンプレートを使用します。https://www.youtube.com/watch?list=PLOETEcp3DkCq788xapkP_OU-78jhTf68j&v=J5Bvy4KhIs0

    潜在的なオプションがにあります

関連する問題