2017-01-23 4 views
2

をリファクタリング:少ないカスケード&Iはこのように見ているいくつかのCSSをリファクタリングしようとしています

path.myClass { 
     //some CSS 
    } 
    .someOtherClass.myClass { 
     //some other CSS 
    } 

私は、最初の部分のための正しい構文を見つけるのに苦労しています。

.myClass { 
    path.& { 
     // some CSS 
    } 
    .someOtherClass { 
     // some other CSS 
    } 
} 

これを正しくリファクタリングするにはどうすればよいですか?

答えて

3

以下のようにすることができます。トップレベルセレクタにはすでに.があるので、内部セレクタの親セレクタ(&)より先にもう一度追加する必要はありません。 2つ目は、親セレクタを最初または最後に追加できるので、かなり簡単です。クラスの順序は関係ありません。

注:それは意味が変わってしまうよう親セレクタの前にスペースがあってはならない)以下

.myClass { 
    path&{ 
    color: red; 
    } 
    .someOtherClass& { /* can do &.someOtherClass also, order doesn't matter */ 
    color: blue; 
    } 
} 

がコンパイルCSS出力である:

path.myClass { 
    color: red; 
} 
.someOtherClass.myClass { 
    color: blue; 
} 
関連する問題