ruby-on-rails – 在Ruby on Rails上的HAML中,如何使用:sass过滤器?

如果在 Ruby on Rails上使用HAML,那么
:sass
  #someDiv
    border: 3px dashed orange

不会有任何< style>在他们周围标记.

然后

:css
  :sass
    #someDiv
      border: 3px dashed orange

不会踢:sass过滤器,但是

:css
:sass
  #someDiv
    border: 3px dashed orange

将启用:sass过滤器,但它在< style>之外标签.那么如何使用:sass过滤器呢?我们可以手动包装< style>围绕它,但我们想要从sass生成css但不在内部< style>内生成css并不常见. HAML文件中的标记.

解决方法

与您的问题相关的文档是haml-lang.com上的 here以及 sass-lang.com的更详细说明.

我相信你缺少的是不应该在你的haml文件中使用sass.它们应放在带有.sass扩展名的public / stylesheets / sass中.它们将被编译为public / stylesheets中的.css文件,然后将其链接到您的布局中.

来自sas-lang.com链接

For instance,public/stylesheets/sass/main.scss would be compiled to public/stylesheets/main.css.

然后,您将使用stylesheet_link_tag帮助程序(或手动链接样式表):

<%= style_sheet_link_tag 'main' %>

如果你真的需要在haml中使用sass,here就是答案.你不能在haml中嵌套过滤器.你显然需要做这样的事情:

%style(type="text/css") 
  :sass 
    div 
      color: red

我相信this是haml google小组的原始回复.

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...