2017-02-20 107 views
1

我想設置一個LESS變量(@primary)到現有的CSS類(.layer)的背景顏色。我可以將LESS變量設置爲CSS屬性值嗎?

背景:這是一個所謂的核心庫。幾個使用Core的應用程序通過CSS覆蓋.layer的背景顏色來提供自己的主題。我想添加@primary並在Core的其他地方使用,但我需要將它設置爲特定於應用程序的主題顏色。我可以修改每一個應用程序重寫@primary但這是不實際的,所以我一直在尋找一種方式來從已經覆蓋.layer訪問的顏色。

回答

1

如果我理解你的權利,這是你在做什麼:

  1. 使用少的核心項目創建Core.css。輸出是Core.css。
  2. 包括Core.css(NPM通過CDN或......)到一個單獨的項目,讓我們稱之爲ChildApp,不具有接入到核心變量少
  3. ChildApp是壓倒一些CSS從Core.css用自己的CSS。

如果是這種情況,那麼不,您無法直接修改父級的孩子覆蓋。

最接近的做法是從Core.css更改html結構或類名,以便子類覆蓋不會對您希望從Core中調整的內核中的項目產生任何影響。

+1

這幾乎正是我一直在努力做的事。你的解釋幫助我看到我是如何思考這個錯誤的(首先嚐試使用LESS)。我希望抓住由ChildApp提供的覆蓋值並將它們應用到Core的其他地方。我被忘記LESS是一個預處理器和是出來的圖片(離開我與核心平原CSS)由ChildApp執行其重寫的時間的。謝謝。 – Blake

相關問題