我一直在尝试使用http://startbootstrap.com/stylish-portfolio并在下载所有文件并复制到目录后,我在部分_bordered-pull上遇到以下错误:
ActionView::Template::Error (Undefined variable: "$fa-css-prefix".
然而,变量已定义,我正在导入(或至少尝试)部分。
我的资产/样式表目录如下:
--application.css.scss
--bootstrap.css.scss
--font-awesome.css.scss.erb
--stylish-portfolio.css.scss
--|font-awesome
--_bordered-pulled.css.scss
--...(other partials)
--font-awesome.css.scss
Application.css.scss:
/*
* This is a manifest file that'll be compiled into application.css, which will include all the files
* listed below.
*
* Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
* or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
*
* You're free to add application-wide styles to this file and they'll appear at the top of the
* compiled file, but it's generally better to create a new file per style scope.
*
*= require_self
*= require_tree .
*/
@import 'font-awesome/font-awesome';
@import 'bootstrap';
@import 'font-awesome';
@import 'stylish-portfolio';
字体-awesome.css.scss
/*!
* Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome
* License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License)
*/
@import "variables";
@import "mixins";
@import "path";
@import "core";
@import "larger";
@import "fixed-width";
@import "list";
@import "bordered-pulled";
@import "spinning";
@import "rotated-flipped";
@import "stacked";
@import "icons";
_bordered-pulled.css.scss
// Bordered & Pulled
// -------------------------
.#{$fa-css-prefix}-border {
padding: .2em .25em .15em;
border: solid .08em $fa-border-color;
border-radius: .1em;
}
.pull-right { float: right; }
.pull-left { float: left; }
.#{$fa-css-prefix} {
&.pull-left { margin-right: .3em; }
&.pull-right { margin-left: .3em; }
}
是语法错误还是我的资产管道设置错误?
_variable.css.scss https://github.com/IronSummitMedia/startbootstrap/blob/master/templates/stylish-portfolio/font-awesome/scss/_variables.scss
答案 0 :(得分:5)
您必须执行以下操作:
打开你的项目的font-awesome / less / variables.less或font-awesome / scss / _variables.scss并编辑@fa-font-path或$ fa-font-path变量指向你的字体目录。
来源:fontawsome的文档
答案 1 :(得分:1)
尝试检查预编辑资产的方式。检查initializers / assets.rb(或者它可能是environment / production.rb),以确保以友好的方式预编译资产,如下所示:
config.assets.precompile += ["*.js", "*.scss", "*.jpg", "*.png"]
时我遇到同样的错误
config.assets.precompile += [/.*\.png/,/.*\.ico/,/.*\.jpg/,/.*\.js/,/.*\.scss/]