繁体   English   中英

同时添加具有image_tag和image path的link_to

[英]adding link_to with image_tag and image path both

我正在Rails应用程序视图中尝试用link_to替换标签。 为了替换,我将svg图标,文本和链接全部集中在一个标签中。 这是下面

 <a class="navbar-brand" href="index.html"><%= image_tag 'logo.svg', "data-svg-fallback" => image_path('logo.svg'), :align=> "left" ,:style => "padding-right: 5px;" %>
    My Project </a>

但是我无法将上面的链接转换为rails link_to

任何建议都很好,这是我正在尝试的方法,但是没有用

  1.  <%= link_to '#' do %>
  My Project<%= image_tag ('logo.svg', "data-svg-fallback" => image_path('logo.svg'), :align=> "left" ,:style => "padding-right: 5px;") %>
  <% end %>
2.   <%= link_to "My Project", home_index_path, :class=> "navbar-brand" do %>
  <%= image_tag('logo.svg'), "data-svg-fallback" => image_path('logo.svg'), :align=> "left" ,:style => "padding-right: 5px"; %>
  <% end %>

删除image_tag之后的空格。

<%= link_to '#' do %>
  My Project <%= image_tag('logo.svg', "data-svg-fallback" => image_path('logo.svg'), :align=> "left" ,:style => "padding-right: 5px;") %>
<% end %>

取而代之的image_path你必须使用asseth_path

尝试这个:

<%= link_to '#' do %>
  My Project <%= image_tag('logo.svg', "data-svg-fallback" => asset_path('logo.svg'), :align=> "left" ,:style => "padding-right: 5px;") %>
<% end %>

您需要使用asset_path来在data属性内设置svg的路径,如下所示

<%= link_to "index.html", class: "navbar-brand" do %>
       <%= image_tag "logo.svg", data: { svg_fallback => asset_path("logo.svg") }, align: "left", style: "padding-right: 5px;" %> My Project
<% end %>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM