2

如何将多个 css 类添加到<img>using image_tag 中?

使用image_tag("image.png", :class => "class1, class2")似乎不起作用

4

5 回答 5

6

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

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

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

于 2012-12-13T10:48:46.170 回答
0
The following will work:
<%= image_tag("/image.png", :class => "class1 class2")%>
于 2012-12-13T10:49:27.997 回答
0

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

相反,我尝试了

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

这非常有效。

于 2016-03-31T06:38:21.570 回答
0

老问题,但我认为指出至少在 Rails >= 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>
于 2016-08-02T01:54:41.673 回答
-1

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

例如

<div class="class1 class2">
// Content here.
</div>
于 2012-12-13T11:12:12.287 回答