2016-11-24 2 views
7

いくつかの接頭辞で始まるすべてのタグにスタイリングを指定する方法はありますか?例えばで始まるすべてのタグ

:私は角使用してカスタムコンポーネントの多くを持っていますので、私は、このようなセレクタをしたい理由

tst-* { 
    display: block; 
    background: yellow; 
} 

<tst-some-tag>Some content</tst-some-tag>


理由があります。これらはすべてblockと表示されます。毎回クラスを追加するのではなく、すべてのカスタム要素のプロパティにdisplayプロパティを指定するのは非常に快適です。

+1

各 'HTML'タグは、いくつかの具体的な理由のためです。異なるタグに同じスタイルを適用する場合は、 'class'とスタイルを使用してください。 –

+1

1つのタグの一部を選択することはできません。クラスやカスタムの 'data- *'属性のようなものを追加して@ to7beの答えに適用する必要があります –

答えて

3

あなたはクラス名で要素を選択したい場合はあなたはこれを行うことができます:あなたはどちらの場合も [id^='id']

[class^='class']

を使用すると、IDによって要素を選択したい場合は、単にこれを行いますすべての要素を選択してくださいは、一重引用符で囲んだテキストをclass-nameまたはidのどちらかで入力してください。

バリエーションも可能です:あなたは、同じCSS

<tst-some-tag class="tst-class">Some content</tst-some-tag> 

を持っているでしょう角度でそれらの要素に別のクラスを追加することができます div[class^='class']またはdiv[id^='id']

0

あなたは、単にちょうどjQueryのように角度にクラスを追加することができますway

var myEl = angular.element(document.querySelector('tst-some-tag')); 
myEl.addClass('tst-class'); 
+0

これはオプションではありません。 'querySelector'メソッドはCSSセレクタを使用するので、' tst - * '建設。 特定のスタイリングが必要なすべてのタグを指定する必要がある場合、 'angular.element(document.querySelector( 'tst-some-tag'))'がどのように役立つか理解できません。つまり、私は 'angle.element(document.querySelector( 'tst-some-tag、tst-some-tag-2、tst-some-tag-3 ... tst-some-tag- N ')) ' – ReasonX7

0

すべての回答によれば、最適な解決策は特定のクラスとすべてのカスタム要素に追加します。

.tst { 
    display: block; 
    background: yellow; 
} 

<tst-some-tag class="tst">Some content</tst-some-tag>

関連する問題