2015-02-09 57 views
0

我最近碰到了Less &:擴展函數。LessCss - &擴展函數是否可以嵌套?

我想要做的就是能夠嵌套兩個或更多的擴展 - 換言之,擴展到一個本身擴展到另一個的類。

經過測試,似乎它無法正常工作,或者我以錯誤的方式去解決問題。第一個擴展擴展,第二個擴展不擴展。

我看過Less網站,一些權威博客,並且找不到任何可能的引用。

下面是一個例子:

.clearfix 
{ 
    &:before, 
    &:after { 
     content: " "; 
     display: table; 
    } 

    &:after { 
     clear: both; 
    } 
} 

.inline-list 
{ 
    &:extend(.clearfix all); 

    > li { 
     float:left; 
    } 
} 

.test 
{ 
    &:extend(.inline-list all); 
    // clearfix is not extended to test 
} 

任何意見讚賞。

+0

對不起,但對我來說有點不清楚你想達到什麼。你可以顯示你想實現的結果嗎?(在CSS中) – n1kkou 2015-02-09 09:44:09

+0

我已經添加了一個例子 - 因爲.inline-list繼承了.clearfix,我希望這個關係在我從.test擴展到.inline-list時被維護。 。不是這種情況。 .test擴展到.inline-list但不是.clearfix - 因此.inlinelist不起作用,缺少.clearfix – dotnetnoob 2015-02-09 09:59:24

+0

你使用什麼版本?你的例子在2.3-2.4中工作得很好(在prev。版本中有幾個'extend'錯誤/問題可能會阻止這個問題)。 – 2015-02-09 10:59:57

回答

1

最後,我傾倒了ServiceStack Bundler的無點。這給了我Less的所有最新功能。恕我直言,我會保持清除無點,因爲它沒有被定期維護足以被視爲一種選擇。

0

.test{ .inline-list; }這就是你想要的,或者我還是錯了嗎?
你可以很容易地讓一個類繼承像這樣的另一個類.class{ .anotherClass; .andYetAnotherClass; }

+0

如果我使用.clearfix作爲.inline-list的混入,它的工作原理是擴展到.inline-list並獲取內置的.clearfix。,但是擴展後,這種關係不會被維護。 – dotnetnoob 2015-02-09 10:02:02