2016-08-15 7 views
1

私は動的テーマを使ってアプリケーションを作りたいと思っています。たとえば、ボタンがあり、それをクリックすると、いくつかの要素の色が何らかのルールによって変更されます。最初のアイデア -角をつけてカスタムCSSルールを追加する

<style type="text/css" ng-bind="ownStyle"></style> 

とでそれを行うのinit ownStyle $ rootScope中:

$rootScope.ownStyle = "* {color: green }"; 

しかし、それはひどいようです+それは文字列としてのCSSルールを記述するためにあまりにも難しいです。それを行うelegancy方法がありますか?

+0

(単に独自のCSSファイルにルールを持つことが可能であってもよいが、特定のクラスでそれらをすべて序文ができ例えば ​​'.ownStyle.myThing')。それをオンにするには、そのクラスを含む要素にクラスを追加します。 – Katana314

答えて

3

すると、このような何かを試すことができます。..

$rootScope.color = red; 
 

 
$scope.changecolor = function(){ 
 
    $rootScope.color = blue; 
 
}
/* Base color */ 
 
.dinamic{ 
 
    background-color: white; 
 
}
<style> 
 
    .dinamic{ 
 
    background-color: {{$rootScope.color}} !important; 
 
    } 
 
</style> 
 

 
<button class="dinamic">I Will Change Color</button>

+0

はい、この解決策は良いです! –

1

ng-classディレクティブを使用できます。

このディレクティブを「いくつかの要素」に追加するだけで、適切な条件を設定すれば問題ありません。

1

ng-class組み込みディレクティブを使用できます。

<div ng-class="{'some-class': condition}></div> 
関連する問題