如何在样式标记中添加嵌入式ruby

时间:2013-02-07 22:15:28

标签: css ruby embedded-ruby

我想动态定义状态栏的宽度。

首先我定义变量:

<% target = (clicks/total_clicks)*100 %>

然后我尝试将ruby代码嵌入到css width标签中:

<div class="bar" style="width: <%= target %>%">

但是,html输出看起来像这样

<div class="progress progress-striped">
<div class="bar" style="width: 0%"></div>
</div>

我尝试将目标var转换为字符串:

<% target = ((clicks/total_clicks)*100).to_s %>

我显然也试图分配一个非动态值:

<% target = 40.to_s %>

但没有成功。

如何将ruby var嵌入到CSS样式标记中? 谢谢你的帮助。

1 个答案:

答案 0 :(得分:2)

由于你使用这些数字,你得到0。您正在使用Integers。这样做:

<%= target = (Float(10)/Float(20))/100 %>

使用浮动将允许您获得您正在使用的百分比。当您使用整数时,它通常会将数字四舍五入。希望这可以帮助。

编辑:

您也可以使用.to_f方法,而不是Float