我想动态定义状态栏的宽度。
首先我定义变量:
<% 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样式标记中? 谢谢你的帮助。
答案 0 :(得分:2)
由于你使用这些数字,你得到0。您正在使用Integers
。这样做:
<%= target = (Float(10)/Float(20))/100 %>
使用浮动将允许您获得您正在使用的百分比。当您使用整数时,它通常会将数字四舍五入。希望这可以帮助。
编辑:
您也可以使用.to_f
方法,而不是Float