如何在rails上使用@ font-face来修饰字体:
我的字体位于:
/供应商/资产/样式表/字体/的定制字体列表-此处 .eot
包含@ font-face的样式表位于:
/vendor/assets/stylesheets/fonts.css
我现在正在使用
@font-face {
font-family: 'ArimoRegular';
src: url('<%= asset_path('fonts/arimo-regular-webfont.eot') %>');
src: url('<%= asset_path('fonts/arimo-regular-webfont.eot') %>'+'?#iefix') format('embedded-opentype'),
url('<%= asset_path('fonts/arimo-regular-webfont.woff') %>') format('woff'),
url('<%= asset_path('fonts/arimo-regular-webfont.ttf') %>') format('truetype'),
url('<%= asset_path('fonts/arimo-regular-webfont.svg') %>#ArimoRegular') format('svg');
font-weight: normal;
font-style: normal;
}
我想知道这是否正确,
欢迎任何建议, 谢谢
答案 0 :(得分:11)
您不应该需要文件路径的fonts/
部分。 app/assets/fonts
目录应已包含在asset_path
中,因此您应该可以使用此目录:
<%= asset_path('arimo-regular-webfont.eot') %>
我不知道为什么会发生这种情况,但我听说有人assets/fonts
目录的问题不在资产管道中,所以你必须手动添加它。如果上述方法不适合您,请尝试通过将以下内容添加到config/application.rb
:
config.assets.paths << "#{Rails.root}/app/assets/fonts"
答案 1 :(得分:3)
在使用asset_path
帮助时,您应该将.erb
附加到font.css
,使其成为font.css.erb
。更好的解决方案是使用来自sass-rails
或less-rails
宝石的资产助手,例如font-url
。
有关它的更多信息:sass-rails features