我的初衷是在图像上显示一些文字。同时,当我们点击图片时,网页将被重定向。 我使用link_to函数与包含背景图像的div。 代码是这样的:
<%= link_to raw('<div style="background-image:url(<%= image_url '1.jpg'%>);width:340px;"> This is a test</div>'),index_by_dvp_domain_path %>
但是系统告诉我有SyntaxError。
答案 0 :(得分:4)
您可以将link_to传递给包含您要显示的内容的块。因此,您不必使用link_to(display, url, options={})
,而是获得link_to(url, option={}, &block)
。
<%= link_to index_by_dvp_domain_path do %>
<div style="background-image: url(<%= image_url '1.jpg'%>);width:340px;">
This is a test
</div>
<% end %>
执行此操作后,您可以像普通的html一样对待它。
与往常一样,我建议尝试将任何样式移到它自己独立的样式表中。
答案 1 :(得分:1)
最好的方法是使用
<%= link_to index_by_dvp_domain_path do
content_tag(:div, 'This is a test',:style=>"background-image:url(#{image_url} '1.jpg');width:340px;" )
end
%>
OR
<%= link_to content_tag(:div, 'This is a test',:style=>"background-image:url(#{image_url} '1.jpg');width:340px;" ), index_by_dvp_domain_path %>
答案 2 :(得分:0)
请试试
<%= link_to raw('<div style="background-image:url(#{image_url '1.jpg'}%>);width:340px;"> This is a test</div>'),index_by_dvp_domain_path %>
答案 3 :(得分:0)
我认为即使你有一个包含多个标签的大块,使用如下的Link_to也会简单得多:
<%= link_to desired_path do %>
<div class="linkable">
<another div>
... some other tags
</another div>
</div>
<% end %>
我建议你为鼠标悬停事件使用不同的背景颜色,因为它会向观众显示它是一个链接!
在.css文件中:
.linkable:hover{
background-color: red;
}
答案 4 :(得分:-2)
我很惊讶地看到没有人想出在Rails中这样做的常规方法。
<%= link_to image_tag("/images/1.jpg",:size => "340X340"),index_by_dvp_domain_path %>