新手问题 Rails 如何在一个自己的 CSS 文件里调用位于其他位置的资源?

alphaliu · 2013年09月03日 · 最后由 AlphaLiu 回复于 2013年09月03日 · 5432 次阅读

我想在一个 css 文件里面调用一个字体文件,请问这个字体文件的路径应该怎么写才对???我把它放在 asserts/font 目录里面,然后路径用 asserts/font/font.ttf,找不到这个资源.....

#1 楼 @Rei 我也这样用了,但是看起来还需要 route??这个 route 要怎么写?我没有头绪

#2 楼 @AlphaLiu 怎么写的?

#3 楼 @Rei src:url(<%= asset_path 'fontawesome-webfont.eot?v=3.2.1' %>);

就是 .css.erb 这样的来搞啊,貌似你不应该将?v=3.2.1写在那儿,其实根本没必要,要也是应该放在外面吧……然后有个问题是 assets pipeline 不会根据引用目标内容的改变而自动重编译.css.erb 或者 coffee.erb 这样的文件,需要自定义 guard 来加 timestamp

#4 楼 @AlphaLiu 放的路径是什么,生成路径是什么?

#6 楼 @Rei 我放在 vendor/assets/font/ 里面,生成的路径是../asserts/fontawesome-webfont.eot。直接去 get 这个路径,出现的错误是No route matches [GET] "/asserts/fontawesome-webfont.eot"

asset_path 'font/fontawesome-webfont.eot'

v 参数是处理不了的。

#8 楼 @Rei 谢谢。已经成功。看起来就是即使是放在 font 里面,也只需要用

asset_path 'fontawesome-webfont.eot'

就可以了。

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册