如何使用image_tag向<img/>添加多个css类?

时间:2012-12-13 10:47:18

标签: css ruby-on-rails

如何使用image_tag向<img>添加多个css类?

使用image_tag("image.png", :class => "class1, class2")似乎无法正常工作

5 个答案:

答案 0 :(得分:6)

不要使用逗号分隔类,使用空格分隔它们......

image_tag("image.png", :class => "class1 class2")
  

注意:您不能在类名中使用空格...将它们分开使用   _-,如果使用空格而不是第1类,则第2类将是4个类,其中所有类都无效。

答案 1 :(得分:0)

The following will work:
<%= image_tag("/image.png", :class => "class1 class2")%>

答案 2 :(得分:0)

我认为这不是正确的方法,因为这对我没有用。

相反,我试过

&#13;
&#13;
<%= image_tag("image.png"), :class => "media-object img-circle" %>
&#13;
&#13;
&#13;

这完美无缺。

答案 3 :(得分:0)

旧问题,但我认为指出这一点可能很有用,至少在Rails&gt; = 4.2中,您可以传递一组值。

image_tag("avatar", class: [:class1, :class_2, "img-responsive", 'img-circle'])

这将产生类似于以下内容:

<img class="class1 class_2 img-responsive img-circle" src="/assets/avatar.png" alt="Avatar" />

请注意,如果您的类包含连字符,则需要将其括在引号中,否则Ruby会将其作为方法/变量处理。

:img-responsive

undefined local variable or method `responsive' for #<#<Class:0x007fb6baa52198>:0x007fb6b982e2f0>

答案 4 :(得分:-1)

要将多个类应用于任何控件或html元素,您需要使用空格而不是逗号分隔类名。

例如

<div class="class1 class2">
// Content here.
</div>