ruby-on-rails-3 – 如何让我的LESS变量可用于Rails中的所有CSS
是)我有的:
在Rails 3.2.2中,我有以下样式表: app/assets/stylesheets | |-- application.css |-- bootstrap_and_overrides.css.less | |-- annotations.css.less |-- maps.css.less.erb `-- users.css.less.erb 前两个或多或少是系统默认的.其他是我定义自定义样式的地方. 因此,application.css像往常一样包含所有其他文件: *= require_self *= require_tree . 当然,bootstrap_and_overrides.css.less包括Twitter Bootstrap以及其他一些自定义的LESS变量. @import "twitter/bootstrap/bootstrap"; @import "twitter/bootstrap/responsive"; // other stuff @brown_text: #332820; 什么行不通: 现在,在annotations.css.less中,我想使用@brown_text,但它给了我:
我认为这是因为annotations.css.less没有引用定义变量的“master”文件.并且似乎首先编译annotations.css.less – 请注意我目前处于开发环境中. 那么,我如何使用我的自定义LESS变量,并使其在其他样式表文件中可用?我目前的“修复”只是将我的所有自定义样式移动到bootstrap_and_overrides.css.less.erb中,这看起来根本不是很干净. 什么也行不通: 只能导入LESS文件是不可能的,因为它们使用Rails的资产路径助手.并且导入ERB文件也是不可能的,因为@import语句将找不到该文件,因为它需要.less后缀. 解决方法
您不需要将ERB用于资产路径帮助程序 – 它们实际上被烘焙到less-rails gem中,您可以在此处引用:
https://github.com/metaskills/less-rails/#helpers
您应该能够在您使用ERB的任何地方使用asset-path或asset-url来引用资产管道. 鉴于此,最好的方法是: >将application.css转换为application.css.less 希望有所帮助! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |