【发布时间】:2010-10-22 17:48:29
【问题描述】:
如何将 CSS 与 RoR 结合使用?当我从外部链接时,我永远无法看到这些文件。我将 .css 文件复制到我能想到的每个文件夹中……视图、控制器、模板,但似乎没有任何效果。
我需要做什么才能使用 Rails 应用程序启用外部 CSS 文件?我是 Rails 新手,如果这是基本的,请见谅。
【问题讨论】:
标签: ruby-on-rails css ruby
如何将 CSS 与 RoR 结合使用?当我从外部链接时,我永远无法看到这些文件。我将 .css 文件复制到我能想到的每个文件夹中……视图、控制器、模板,但似乎没有任何效果。
我需要做什么才能使用 Rails 应用程序启用外部 CSS 文件?我是 Rails 新手,如果这是基本的,请见谅。
【问题讨论】:
标签: ruby-on-rails css ruby
将 CSS 文件放在 public/stylesheets 中,然后使用:
<%= stylesheet_link_tag "filename" %>
链接到布局中的样式表或视图中的 erb 文件。
类似地,您将图像放在 public/images 中,将 javascript 文件放在 public/javascripts 中。
【讨论】:
如果你使用的是rails > 3 版本,那么有一个概念叫做asset pipeline。您可以将 CSS 添加到
app/assets/stylesheets
然后它将被应用程序自动拾取。 (这很有用,因为 rails 会自动压缩 CSS 文件)
read more here 关于资产管道
【讨论】:
app/assets/stylesheets(应该是“资产”上的“s”)
使用 rails 样式表标签像这样链接你的 main.css
<%= stylesheet_link_tag "main" %>
前往
config/initializers/assets.rb
一旦进入assets.rb,在Rails.application.config.assets.version = '1.0'下方添加以下代码sn-p
Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.precompile += %w( main.css )
重启你的服务器。
【讨论】:
我做了以下...
app/assets/stylesheets 文件夹中。<%= stylesheet_link_tag "filename" %>(很可能是application.html.erb)我建议这样做而不是使用您的公用文件夹。您还可以引用内联样式表,例如在您的索引页面中。
【讨论】:
最初的帖子在 2009 年可能是正确的,但现在它实际上是不正确的,而且正如我在其他一些回复中提到的那样,样式表甚至不需要链接。 Rails 现在会默认为您执行此操作。
您可以使用浏览器中的路径进行测试,例如 testserverpath:3000/assets/filename_to_test.css?body=1
【讨论】:
Rails.application.config.assets.precompile += %w( custom.css )
要添加到上述内容,添加 stylesheet_link_tag 最明显的位置是在您的全局应用程序布局中 - application.html.erb。
【讨论】:
使用 Rails 6.0.0,在 app/assets/stylesheets 创建您的“stylesheet.css”样式表。
【讨论】:
您是否尝试将其放入您的公共文件夹中?每当我有需要从外部引用的图像或类似内容时,我都会将其全部放在那里。
【讨论】: