我们有一个包含大量CSS的大型ASP.NET MVC应用程序,大约105个不同的文件。这些文件由组件分隔,这使它们更易于管理。在运行时,我们使用处理程序缩小/组合它们。
此外,我们的应用程序利用皮肤设置;管理员可以自定义站点的字体和颜色。使用NVelocity将这些皮肤设置注入到CSS文件中,虽然它的旧版本非常高效。
我想将CSS移动到less,这将允许CSS文件中更多的代码重用和清洁。我正在努力做到这一点的最佳选择。我目前的思路是这样的:
我的问题是,这似乎是将动态变量提供给较少文件的最佳方法吗?在光盘上生成skin.less文件是我唯一的选择,还是@import语句可以引用处理程序本身,所以不需要在光盘上生成文件?
答案 0 :(得分:0)
我认为你可以这样做。你说的不太一样,但我在这里做了一些使用LESS和皮肤的概念证明:
https://github.com/aguyawry/less_tests
我认为一个不同之处在于,在此POC中,标记较少的文件是加载在标记中的文件,它会导入基本应用程序样式,然后指定覆盖基础中初始值的新变量。
这个POC都是客户端,但实际上我们也是这个服务器端。我们实际上正在为客户构建一个用户界面来自己选择样式(bg颜色,边框颜色......),然后将其中的皮肤样式表渲染到系统中。
我不认为TheZ的评论适用于你所做的一切服务器端。阻止只会在你做这个客户端的时候发生。