如何根据布尔值在Rails中创建动态CSS?

时间:2015-12-29 18:09:02

标签: css ruby-on-rails

我正在创建一个"待办事项网站"。用户可以登录并生成任务。每个任务都有两个复选框" urgent"并且"重要"两者都是与任务模型相关的布尔值。一切都很好但我想根据选中的复选框更改任务的背景颜色。所以应该总共有4种可能性/背景颜色样式:

  • 任务(重要:真实,紧急:真实) - 背景颜色:红色;
  • 任务(重要:真,紧急:假) - 背景颜色:蓝色;
  • 任务(重要:假,紧急:真) - 背景颜色:绿色;
  • 任务(重要:假,紧急:假) - 背景颜色:灰色;

问题:

如何根据任务的紧急和重要布尔值实现4种不同的背景颜色样式?

1 个答案:

答案 0 :(得分:2)

在您看来:

<% if task.important and task.urgent %>
  <div class="background-color-red">
    ...
  </div>
<% elsif task.important and !task.urgent %>
  <div class="background-color-blue">
    ...
  </div>
<% elsif !task.important and task.urgent %>
  <div class="background-color-green">
    ...
  </div>
<% elsif !task.important and !task.urgent %>
  <div class="background-color-grey">
    ...
  </div>
<%end%>

然后,您可以使用上面的background-color在css文件中定义class