2013-06-05 8 views
7

Bene, sto usando la gemma "font-awesome-rails". Sono praticamente abituato a font-awesome al di fuori di Rails, ma immagino che non sia così popolare nella community di Rails.Posso usare link_to per collegare un'immagine e un testo

Una volta installato, crea le icone che utilizzano il formato

<i class="nameoftheicon"> </i> 

ho pensato di usarlo per il mio logo del sito, che consisterebbe dell'icona da font-impressionante e del testo. Così ho provato:

Funziona, ma quando si passa il mouse, agiscono come due elementi diversi.

  1. Qual è il modo Rails di combinare un'immagine e un testo in un unico <a> tag.

  2. E c'è qualche alternativa Rails popolare a font-awesome?

risposta

2

Sì, è possibile. Per ancoraggi complessi come le immagini, basta rimuovere il primo argomento (il testo del collegamento o l'ancora) e collegare un blocco dopo il metodo.

Il contenuto all'interno del blocco diventerà l'ancora.

+0

Hi @BillyChan , sei sicuro che questo sia supportato da Rails 3.2. Sto diventando strano "SyntaxError in Pages # home". – TradeRaider

+0

@TradeRaider, ovviamente funziona e lo uso spesso. Ecco il codice sorgente di link_to, puoi vedere come funziona con i blocchi. Se il blocco, verrà utilizzato come testo del collegamento. https://github.com/rails/rails/blob/380800e4a272db98f3dd267f82e0ce1e4d03f4b8/actionpack/lib/action_view/helpers/url_helper.rb#L231 –

+0

Per qualche strana ragione, funziona con il blocco do..end, ma non con il riccio parentesi (forse sono solo io, non lo so). – TradeRaider

23

passare un blocco link_to e il blocco saranno collegati

<%= link_to path, id: "logo" do %> 
    <i class="icon-puzzle-piece icon-2x"></i> 
    My Super Site 
<% end %> 
+0

Grazie mille. Ha funzionato :) – TradeRaider

+0

@TradeRaider fantastico! per favore segna come risposta corretta (fai clic sulla freccia verde) –

+0

@JesseWolgamott: la tua risposta è stata accidentalmente ridotta, volevo svenderla. Se lo modifichi posso riviverlo. – IanBussieres

6

Provatelo,

Si può citare direttamente rotaie image_tag in link_to come,

<%= link_to image_tag("image_name")+"your text", root_path, :class=>"icon-puzzle-piece icon-2x" %> 
0

Hey ragazzi questo è un buon modo di link w/image (ha molti oggetti di scena nel caso in cui si voglia attribuire css ad esempio sostituire "alt" o "title" ecc.)

<%= link_to image_tag("#{request.ssl? ? @image_domain_secure : @image_domain}/images/linkImage.png", {:alt=>"Alt title", :title=>"Link title"}) , "http://www.site.com"%> 

Spero che questo aiuti!

0

Sì, si utilizza un tipo di carattere vettoriale come immagine, ma è possibile utilizzare image_tag troppo, ad esempio:

<%= link_to user_root_path, :class=> "user" do 
     image_tag("image.jpg", :alt => current_user.name) + 
     t("dashboard.my_account") 
    end %> 

Non dimenticare collegamento insieme tutti e due con "+"