小编典典

Rails:如何在 Rails 4 中引用 CSS 中的图像

all

Heroku 上的 Rails 4 有一个奇怪的问题。编译图像时,它们会添加散列,但 CSS
中对这些文件的引用没有调整正确的名称。这就是我的意思。我有一个名为 logo.png 的文件。然而,当它出现在 heroku 上时,它被视为:

/assets/logo-200a00a193ed5e297bb09ddd96afb953.png

但是 CSS 仍然声明:

background-image:url("./logo.png");

结果:图像不显示。有人遇到这个吗?如何解决?


阅读 30

收藏
2022-06-23

共1个答案

小编典典

Sprockets 和 Sass
一些漂亮的助手可以用来完成工作。如果您的样式表文件扩展名为或, Sprockets 只会 处理这些帮助程序。.css.scss``.css.sass


图像特定助手:

background-image: image-url("logo.png")

不可知论者:

background-image: asset-url("logo.png", image)
background-image: asset-url($asset, $asset-type)

或者,如果您想将图像数据嵌入到 css 文件中:

background-image: asset-data-url("logo.png")
2022-06-23