Ruby on rails SCSS不呈现-使用Rails 4进行敏捷Web开发(书籍)

Ruby on rails SCSS不呈现-使用Rails 4进行敏捷Web开发(书籍),ruby-on-rails,sass,Ruby On Rails,Sass,我已经从我正在编写的教程的书中复制了原始文本文件,但是css没有被应用,我不知道为什么。但HTML内容显示正确。也许你需要我提供更多我目前还不知道的信息,但如果需要的话,我很乐意把它带到会议桌上 application.html.erb <!DOCTYPE html> <html> <head> <title>Depot</title> <%= stylesheet_link_tag "application", m

我已经从我正在编写的教程的书中复制了原始文本文件,但是css没有被应用,我不知道为什么。但HTML内容显示正确。也许你需要我提供更多我目前还不知道的信息,但如果需要的话,我很乐意把它带到会议桌上

application.html.erb

<!DOCTYPE html>
<html>
<head>
  <title>Depot</title>
  <%= stylesheet_link_tag    "application", media: "all",
    "data-turbolinks-track" => true %>
  <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
  <%= csrf_meta_tags %>
</head>
<!-- START_HIGHLIGHT -->
<body class='<%= controller.controller_name %>'>
<!-- END_HIGHLIGHT -->
<%= yield %>
</body>
</html>
错误

你修好了-恭喜

你可能想考虑的是使用SASS而不是SCSS。您只需将文件的扩展名更改为
.css.sass
——即可消除SCS中大量多余的括号:

#app/assets/stylesheets/application.css.sass
.products
   table
      border:
        collapse: collapse

      & tr td
         padding: 5px
         vertical:
             align: top
--

样式表

与其内联设置body标签的样式,为什么不为每个
控制器创建适用的样式表,
并从中设置
body

像这样:

#app/views/layouts/application.html.erb
<%= stylesheet_link_tag  "application", controller_name, media: "all","data-turbolinks-track" => true %>
然后,您需要记住将这些资产添加到您的:


通过将默认名称“application.css”重命名为“application.css.scss”,这将使您的样式更加通用
#app/views/layouts/application.html.erb
<%= stylesheet_link_tag  "application", controller_name, media: "all","data-turbolinks-track" => true %>
app
| - assets
  | - stylesheets
     - application.css.scss
     - controller1.css.scss
     - controller2.css.scss
Rails.application.config.assets.precompile += ['controller1.css', 'controller2.css']