Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Rails 3:链接到和图像标签_Ruby On Rails_Ruby_Image_Hyperlink - Fatal编程技术网

Ruby on rails Rails 3:链接到和图像标签

Ruby on rails Rails 3:链接到和图像标签,ruby-on-rails,ruby,image,hyperlink,Ruby On Rails,Ruby,Image,Hyperlink,我怎样才能在我的公共/图像中有一个链接到文件background.jpg的图像标记,当单击时,将用户重定向到根url(因此页面内容在容器中,如果用户单击背景图像将重定向到主页?),谢谢 当然可以: <%= link_to(image_tag("background.jpg", :alt => "home image", :width => 100, :height => 100, :title => "Click here to return to Home") "

我怎样才能在我的公共/图像中有一个链接到文件
background.jpg
的图像标记,当单击时,将用户重定向到根url(因此页面内容在容器中,如果用户单击背景图像将重定向到主页?),谢谢

当然可以:

<%= link_to(image_tag("background.jpg", :alt => "home image", :width => 100, :height => 100, :title => "Click here to return to Home") "/") %>
“主页图像”,:width=>100,:height=>100,:title=>“单击此处返回主页”)“/”>

不久前我也在搜索同样的东西,我找到了Rails的方法

假设您希望HTML页面呈现以下代码

<a title="Return Home" class="logo" href="/pages/home">
 <img width="200" height="50" src="logo.png" alt="Logo Image">
</a>

其中“页面”是控制器,“主页”是操作。这是铁路

    <%=link_to(image_tag("12roots-logo.png",:size => "209x50", :alt=> "12roots"),
 {:controller=>"pages", :action=>"home"}, :title=>"Return Home", :class=>"logo") %>
“209x50”,:alt=>“12roots”),
{:controller=>“pages”,:action=>“home”},:title=>“Return home”,:class=>“logo”)%%>

大多数rails标记助手都接受块,这意味着您可以使用
do
简化您的生活。这里我使用了一个带有
链接到
的块:

<%= link_to root_url do %>
  <%= image_tag "background.jpg" %>
<% end %>

在这种情况下,link_期望下一个参数是路径,块将发出锚包裹的内容

一般来说,我尽量保持每行一个标记帮助器的规则,除非它非常琐碎,所以当行变得拥挤时,我更喜欢这种技术。这样做的一个优点是,由于标记位于不同的行上,因此更容易识别错误

如果您需要其他选项,请像通常那样添加它们。例如,我将添加一个css类:

<%= link_to root_url, :class => 'imagelink' do %>
  ...
“imagelink”do%>
...

执行此操作时,链接不会垂直拉伸以填充屏幕,即使图像会这样做。因此,如果单击浏览器窗口顶部的几个像素,则会重定向,但如果单击其他任何位置,则不会重定向。你有解决这个问题的方法吗?只是增加了宽度和高度来告诉你。然而,这听起来确实像链接周围区域的CSS有问题。解决方案确实满足了这个问题。我说我们不关注CSS行为,因为它超出了本文讨论的范围。如果其中一个答案解决了您的困境,请接受它。非常感谢。