Używam tagu link_to img, jak poniżej
<%= link_to image_tag("Search.png", :border=>0, :class => 'dock-item'),
:action => 'search', :controller => 'pages'%><span>Search</span></a>
Co powoduje następujące html
<a href="/pages/search"><img alt="Search" border="0" class="dock-item"
src="/images/Search.png?1264132800" /></a><span>Search</span></a>
Chcę, aby class = "dock-item" trafiało do <a>
tagu zamiast do tagu img.
Jak mogę to zmienić?
Aktualizacja:
<%= link_to image_tag("Search.png", :border=>0), :action => 'search',
:controller => 'pages', :class => 'dock-item' %>
prowadzi do
<a href="/pages/search?class=dock-item"><img alt="Search" border="0"
src="/images/Search.png?1264132800" /></a>
ruby-on-rails
Wszechobecny
źródło
źródło
<a href="https://stackoverflow.com/pages/search" class="dock-item"><img alt="Search" border="0" src="/images/Search.png?1264132800" /><span>Search</span></a>
Dodałem tag span przed<a>
tagiem zamykającymDodam tylko, że możesz przekazać
link_to
metodzie blok:<%= link_to href: 'http://www.example.com/' do %> <%= image_tag 'happyface.png', width: 136, height: 67, alt: 'a face that is unnervingly happy'%> <% end %>
prowadzi do:
<a href="/?href=http%3A%2F%2Fhttp://www.example.com/k%2F"> <img alt="a face that is unnervingly happy" height="67" src="/assets/happyface.png" width="136"> </a>
To uratowało mi życie, gdy projektant dał mi złożone linki z fantazyjnymi efektami roll-over css3.
źródło
Najlepszy będzie:
link_to image_tag("Search.png", :border => 0, :alt => '', :title => ''), pages_search_path, :class => 'dock-item'
źródło
to jest moje rozwiązanie:
<%= link_to root_path do %> <%= image_tag "image.jpg", class: "some class here" %> <% end %>
źródło
Łatwy:
<%= link_to image_tag("Search.png", :border=>0), :action => 'search', :controller => 'pages', :class => 'dock-item' %>
Pierwszym parametrem link_to jest tekst / html do linku (wewnątrz tagu a ). Kolejny zestaw parametrów to właściwości adresu URL i same atrybuty odsyłaczy.
źródło
Aby odpowiedzieć na zaktualizowane pytanie, zgodnie z http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html ...
Zachowaj ostrożność, używając starszego stylu argumentów, ponieważ potrzebny jest dodatkowy literał skrótu:
link_to "Articles", { :controller => "articles" }, :id => "news", :class => "article" # => <a href="/articles" class="article" id="news">Articles</a>
Pozostawienie wyłączonego skrótu daje zły link:
link_to "WRONG!", :controller => "articles", :id => "news", :class => "article" # => <a href="/articles/index/news?class=article">WRONG!</a>
źródło
Cały
:action =>, :controller =>
fragment, który często widziałem, nie działał dla mnie.Spędziłem godziny na kopaniu i ta metoda zdecydowanie zadziałała dla mnie w pętli.
<%=link_to( image_tag(participant.user.profile_pic.url(:small)), user_path(participant.user), :class=>"work") %>
Ruby on Rails używając link_to z image_tag
Ponadto używam Rails 4.
źródło
Ja też tego próbowałem i działa bardzo dobrze:
<%= link_to home_index_path do %> <div class='logo-container'> <div class='logo'> <%= image_tag('bar.ico') %> </div> <div class='brand' style='font-size: large;'> .BAR </div> </div> <% end %>
źródło
Hej, to dobry sposób na link z obrazem i ma wiele rekwizytów na wypadek, gdybyś chciał zastąpić atrybut css, na przykład "alt" lub "tytuł" itp ..... także z logicznym ograniczeniem (?)
<%= link_to image_tag("#{request.ssl? ? @image_domain_secure : @image_domain}/images/linkImage.png", {:alt=>"Alt title", :title=>"Link title"}) , "http://www.site.com"%>
Mam nadzieję że to pomoże!
źródło
<%= link_to root_path do %><%= image_tag("Search.png",:alt=>'Vivek',:title=>'Vivek',:class=>'dock-item')%><%= content_tag(:span, "Search").html_safe%><% end %>
źródło
Możesz także spróbować tego
<li><%= link_to "", application_welcome_path, class: "navbar-brand metas-logo" %></li>
Gdzie „metas-logo” to klasa css z obrazem tła
źródło