我正在尝试使用background-image
显示图像,但我尝试过的任何内容都无法正常工作。但是,视图中的image_tag()
工作得很好。
我试过了:
background-image: url("images/icons/heart.png")
background-image: url("icons/heart.png")
background-image: image-url("images/icons/heart.png")
background-image: image-url("icons/heart.png")
background-image: asset-url("images/icons/heart.png")
background-image: asset-url("/icons/heart.png")
background-image: asset-data-url("images/icons/heart.png")
background-image: url(image-path("icons/user_comment.png"))
每次重新开始rake assets:precompile
只有asset-data-url有效,但是因为它将图像数据存储到CSS中,这是多余的。我无论如何都不能让它在生产中呈现正确的CSS。它始终出现在background-image: url("/images/icons/heart.png")
或类似的地方,而不应用最后的哈希值。
其中大部分都在开发中。
为什么image_tag
会生成正确的网址,而这些网址却不会?
答案 0 :(得分:3)
发现问题,我正在错误地编译资产。
我需要运行
bundle exec rake assets:precompile RAILS_ENV=production
而不仅仅是rake assets:precompile
。
答案 1 :(得分:0)
这是一个简单的CSS文件还是SASS / SCSS文件?这可能是一个非常基本的建议,但对我来说,这听起来像你正在使用直接的CSS,我不认为图像url等指令将被评估。