2013-06-05 21 views
8

Aşağıdaki raylar kodu var html üretirbağlantı

<%= link_to mypath do %> 
    <%= content_tag(:i, "" ,:class=>' icon-eye-open' %> 
<% end %> 
<%= @num %> 

<a href="/mypath"> 
    <i class=" icon-eye-open"></i> 
</a> 
100 

sorundur, jsfiddle here görüldüğü gibi, bu simgenin üzerine gelindiğinde, orada sayı ve simge arasında altı çizilen bir boşluktur. Alan görsel amaçlar için gereklidir, ancak bağlantının altını css olmadan nasıl kaldırırım?

Neden olmasın? Bazı css seçici, spesifik veya jenerik için text-decoration: none; yapabilirdim, ancak neden bu alt çizginin gerçekleştiğini anlamak istiyorum. @num kaldırılmışsa, alt çizgi yoktur ve bağlantı etiketinin dışında olduğundan, onu etkilememelidir. Yine de belli ki öyle.

<a href="/mypath"><i class=" icon-eye-open"></i></a>100 

ve sorun çözülüyor:

cevap

12

Bu </i>

için jsFiddle kodunuzu geçmeyi deneyin sonra boşluk nedeniyle gerçekleşiyor. <i> elemanı içi (daha doğrusu, içi blok) boşluk anlamına gelmektedir, bir kural olarak önemli olduğu için

Bu

olup.

yani sondaki -%> ile yakın bir etiketinden sonra bir yeni satır eklemesini ERB önlemek için:

<%= content_tag(:i, "" ,:class=>' icon-eye-open' -%> 
+0

+1 - buna beni yendi. http://jsfiddle.net/LWJw6/ –

+0

html otomatik olarak raylar tarafından oluşturulur, html sürümü arasındaki fark nedir? daha az düzenli mi yapıyorsun? –

+0

tamam bunu çözmem için bana yol gösterdiği için kabul edeceğim. Content_tag öğesini '' '-%>' 'ile kapatırsam, aynı sonucu, boşluk içermez. Teşekkürler! –

İlgili konular