如何在rails应用程序中使用带ruby的CSS?

时间:2009-04-30 00:57:16

标签: ruby-on-rails css ruby

如何在RoR中使用CSS?当我在外部链接时,我永远无法看到文件。我把.css文件写到了我能想到的每个文件夹......视图,控制器,模板,似乎没什么用。

使用rails应用程序启用外部CSS文件需要做什么?我是rails的新手,如果这是基本的话,请原谅我。

8 个答案:

答案 0 :(得分:56)

将CSS文件放在public / stylesheets中,然后使用:

<%= stylesheet_link_tag "filename" %>

链接到视图中的布局或erb文件中的样式表。

类似地,您将图像放在公共/图像和javascript文件中的public / javascripts中。

答案 1 :(得分:17)

如果您使用的是rails&gt; 3版本,然后有一个名为asset pipeline的概念。您可以将CSS添加到

app/assets/stylesheets

然后它将自动被应用程序选中。 (这很有用,因为rails会自动压缩CSS文件)

关于资产管道的

read more here

答案 2 :(得分:13)

我做了以下......

  1. 将您的css文件放在app/assets/stylesheets文件夹中。
  2. 在默认布局文件中添加样式表链接<%= stylesheet_link_tag "filename" %>(很可能是application.html.erb
  3. 我推荐使用您的公用文件夹。您还可以在内容中引用样式表,例如在索引页中。

答案 3 :(得分:11)

使用rails样式表标签链接main.css,如下所示

<%= stylesheet_link_tag "main" %>

转到

config/initializers/assets.rb

进入assets.rb后,在Rails.application.config.assets.version = '1.0'

下方添加以下代码段
Rails.application.config.assets.version = '1.0'
Rails.application.config.assets.precompile += %w( main.css )

重新启动服务器。

答案 4 :(得分:3)

原始帖子在2009年可能是真的,但现在它实际上是不正确的,并且样式表甚至不需要链接,正如我在其他一些响应中所提到的那样。 Rails现在默认为你执行此操作。

  • 在app / assets / stylesheets中放置任何新工作表.css(或其他)
  • 使用rails-root / scripts / rails服务器测试您的服务器,您将看到链接由rails本身添加。

您可以使用浏览器中的路径测试此内容,例如testserverpath:3000 / assets / filename_to_test.css?body = 1

答案 5 :(得分:2)

要添加上述内容,添加stylesheet_link_tag最明显的地方是您的全局应用程序布局 - application.html.erb。

答案 6 :(得分:0)

您是否尝试将其放入公用文件夹?每当我需要外部参考的图像或类似物时,我就把它全部放在那里。

答案 7 :(得分:0)

使用Rails 6.0.0,在 app / assets / stylesheets 中创建您的“ stylesheet.css”样式表。