评估 html 中的 ruby​​ 代码:css 过滤器

Posted

技术标签:

【中文标题】评估 html 中的 ruby​​ 代码:css 过滤器【英文标题】:Evaluate ruby code inside html :css filter 【发布时间】:2022-01-16 16:46:40 【问题描述】:

我想添加一些我在 haml 模板中的 ruby​​ 代码中计算的 css 样式。

我知道我应该使用 :css 过滤器为我的 css 添加一个 style 标签,如下所示:

%head
  - my_color = "#0000ff"
  :css
    .my-class  
      / how can I set my_color here:
      background-color: red; 
    

但是如何在过滤器中使用 my_color 呢?

编辑:明确地说,我正在寻找 <style> 标记,而不是元素上的内联 css。

【问题讨论】:

你的意思是<style>标签吗? 当然,谢谢,已修复。 【参考方案1】:

您可以使用#my_color 插入变量:

- my_color = "#0000ff"
:css
 .my-class 
   background-color: #my_color;
 

【讨论】:

谢谢 - 所以 :css 下面的块只是从 ruby​​ 的有利位置被视为一个字符串。 并非如此。 :css 是 Haml 中的过滤器示例。 “冒号字符指定一个过滤器。这允许您将缩进的文本块作为输入传递给另一个过滤程序,并将结果添加到 Haml 的输出中。”。在这里,您在将字符串传递到过滤器之前进行变量插值(在 Haml 解析器中)。 haml.info/docs/yardoc/file.REFERENCE.html#filters

以上是关于评估 html 中的 ruby​​ 代码:css 过滤器的主要内容,如果未能解决你的问题,请参考以下文章

ruby 报告评估台面

ruby 阶段0评估 - carolineartz

ruby 阶段0评估 - carolineartz

DSL-让你的 Ruby 代码更优秀

代码在visual studio css文件中工作,但在ruby on rails css文件中出现错误

VIM (YouCompleteMe) 中的 HTML 和 CSS 文件没有自动完成功能