下面的代码应该可以正常工作,但是不会生效。

我在application.rbdevelopment.rbproduction.rb中定义了以下内容:

config.assets.paths << Rails.root.join('app', 'assets', 'fonts')


fonts.scss

@font-face {
    font-family: 'Garamond-Pro-Italic';
    src: url('/assets/fonts/Adobe_Garamond_Pro_Italic.ttf') format('ttf');
}


buttons.scss

.menu-button
{
    font-family: 'Garamond-Pro-Italic', sans-serif;
}

最佳答案

在您的fonts.scss中尝试以下操作:

// First line of file:
//= depend_on_asset "Garamond-Pro-Italic.ttf"

@font-face {
  font-family: 'Garamond-Pro-Italic';
  src: url(font-path('Adobe_Garamond_Pro_Italic.ttf')) format('truetype');
}


在application.scss中:

//= require <path_to_scss_file>


您只需要在application.rb中包含以下行:
config.assets.paths << Rails.root.join('app', 'assets', 'fonts')

当然,请确保Adobe_Garamond_Pro_Italic.ttf实际上位于app/assets/fonts/目录中,而不是vendor,lib或public。

如果这样不起作用,则发布任何资产404错误,以及编译后的fonts.scss文件,您将进入开发控制台。

07-26 09:35
查看更多