我有一个Rails 4应用程序,我刚刚部署到九倍。没有任何样式表或字体呈现。
在我的资源文件夹中,我有layout/fonts/*all-my-font-files
然后在`social.css.scss'中我有:
@import '/layout/fonts';
@font-face {
font-family: 'Mono Social Icons Font';
src: asset_url('MonoSocialIconsFont-1.10.eot');
src: asset_url('MonoSocialIconsFont-1.10.eot?#iefix') format('embedded-opentype'),
asset_url('MonoSocialIconsFont-1.10.woff') format('woff'),
asset_url('MonoSocialIconsFont-1.10.ttf') format('truetype'),
asset_url('MonoSocialIconsFont-1.10.svg#MonoSocialIconsFont') format('svg');
src: asset_url('MonoSocialIconsFont-1.10.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
这是对的吗?
答案 0 :(得分:1)
而不是asset_url
,请使用font-url
你不应该这样:@import '/layout/fonts';
就像:
@font-face {
font-family: 'Mono Social Icons Font';
src: font-url('MonoSocialIconsFont-1.10.eot');
src: font-url('MonoSocialIconsFont-1.10.eot?#iefix') format('embedded-opentype'),
font-url('MonoSocialIconsFont-1.10.woff') format('woff'),
font-url('MonoSocialIconsFont-1.10.ttf') format('truetype'),
font-url('MonoSocialIconsFont-1.10.svg#MonoSocialIconsFont') format('svg');
src: font-url('MonoSocialIconsFont-1.10.ttf') format('truetype');
font-weight: normal;
font-style: normal;
}
答案 1 :(得分:1)
application.rb中
config.assets.paths << "#{Rails.root}/app/assets/fonts"
资产/字体中的将您的字体添加到以下扩展名(字体可以在http://www.font2web.com/上转换)
.eot
.otf
.svg
.ttf
.woff
资产/样式表/ application.css.scss
@mixin font-face($family, $url-without-ext, $font-weight: normal, $font-style: normal) {
@font-face {
font-family: "#{$family}";
src: font-url("#{$url-without-ext}.eot");
src: font-url("#{$url-without-ext}.eot?#iefix") format("embedded-opentype"),
font-url("#{$url-without-ext}.woff") format("woff"),
font-url("#{$url-without-ext}.ttf") format("truetype"),
font-url("#{$url-without-ext}.svg##{$family}") format("svg");
font-weight: $font-weight;
font-style: $font-style;
}
}
# then include you fonts (for example)
@include font-face("Arsis", "Arsis");
@include font-face("Georgia", "Georgia");
然后它可以在css中使用
font-family: "Georgia";
(就在前一天我在Rails 4.0.3上测试了它,一切正常!)