【问题标题】:Changing button image in CSS in Rails/Spree store在 Rails/Spree 商店中更改 CSS 中的按钮图像
【发布时间】:2017-08-03 01:09:15
【问题描述】:

我正在创建一个 Spree 商店,并尝试让按钮使用图像而不是扩展程序(和引导程序)中包含的默认按钮。我可以在 CSS 中定位正确的按钮,并停用背景颜色、边框等。背景 url 不适用于图像(路径:“app/assets/images/heart-icon.png”),但它可以工作适用于任何外部图片网址。

我认为我的问题在于资产管道,但我无法确定设置为 url 的正确路径。

来自我的 .css 文件:

form.new_wished_product button.btn.btn-info {
  background: url(assets/heart-icon.png);
  background-color: transparent;
  background-position: center center;
  background-repeat: no-repeat;
  color: transparent;
  border: none;
}

悬停或单击时按钮不需要更改 - 它只是一个简单的图像。

谢谢!

编辑:

我看到了相关的question,但我认为我的不同,因为我尝试了这些解决方案。我试图用纯 CSS 来做到这一点,并将文件扩展名更改为 .css.scss 对我有用。

【问题讨论】:

标签: css ruby-on-rails ruby-on-rails-4


【解决方案1】:

您是否尝试过使用image-url() helper 而不是url()

image-url('heart-icon.png');

这将在您网站的文件结构中找到资产。

使用资产管道时,必须重写资产路径,并且 sass-rails 为以下资产类别提供 -url-path 助手(在 Sass 中为连字符,在 Ruby 中为下划线):图像、字体、视频、音频、JavaScript 和样式表。

【讨论】:

  • 我试过了,但没有用。我想是因为我的是 CSS 文件,而不是 Sass?
  • 我创建了一个新文件 button.css.scss,并将我的代码移到该文件中,结果按预期工作。
  • 是的,需要 Sass。不幸的是,最初的问题并不清楚这一点。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-04-20
  • 1970-01-01
  • 2011-06-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-17
相关资源
最近更新 更多