这超出了我的知识范围。我正在将我的 rails 3 应用程序从 Bootstrap 2 迁移到 Bootstrap 3。我下载了 Bootstrap 3 和 FontAwesome,将它们放入我的资产文件夹中。然后我尝试修改字体路径。我在 font-awesome/variables.less 中更改了@FontAwesomePath 几次,但它仍然没有指向正确的路径。(我将字体文件放在 ./app/assets/fonts/font-awesome/ 中)
@FontAwesomePath: "fonts/font-awesome"
没关系,因为我看到这一行下面的行是字体文件的 cdn 路径:
//@FontAwesomePath: "//netdna.bootstrapcdn.com/font-awesome/3.2.1/font"; // for referencing Bootstrap CDN font files directly
我取消注释这一行,一切似乎都很好。编译后的 css 文件从 cdn 加载字体并显示所有图标。
然后我删除了这一行,尝试再次将@FontAwesomePath 指向本地服务器。奇怪的事情发生了!不管我做什么,编译后的css文件都指向CDN路径!我尝试清除浏览器缓存,重新启动 Rails 服务器(我使用的是 Rails 服务器的开发模式),甚至从其他计算机加载网站,没有任何变化。它坚持将@FontAwesomePath 指向CDN 路径,即使在整个应用程序代码中不存在url!我只能想象在更少的编译器中有某种变量缓存。谁能告诉我这里面发生了什么?这让我发疯了。
编辑:我正在使用 less gem (v 2.3.2),其中包括 lesscss v 1.3.3。