我试图使用background-image
显示图像,但是我尝试过的东西都没有问题。但是,在视图中的image_tag()
工作得很好。Rails 4 + Apache + Passenger:图像资产不会显示为背景图像
我已经试过:
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
唯一的资产 - 数据 - URL已工作,但因为它的图像数据存储到CSS,这是多余的。我不能以任何理由让它在生产中呈现正确的CSS。它总是出现在background-image: url("/images/icons/heart.png")
或类似的地方,最后的散列不适用。
其中大部分工作在开发中。
为什么image_tag
会产生正确的url,而这些不会呢?
你是如何生成生产中的CSS?你使用了正确的'RAILS_ENV'吗? – phoet
你正在使用哪种生产图像?如果您使用asset_sync gem,它会弄乱图像(我们正在修复)。你的图像如何在CSS和服务器中被引用? –
@phoet'RAILS_ENV'是生产。 CSS文件只存储在app/assets/stylesheets中。 @ rich-peck我没有特别使用任何gem来引用CSS。在本地,CSS显示'background-image:url(“assets/icons/heart.png”)'。 – justindao