Cevapların hiçbiri yol hakkında, .css.erb
uzantıya sahip olduğumda , resimlere nasıl başvurulacağını söylemiyor . Benim için hem çalışmış üretim ve geliştirme yanı:
2.3.1 CSS ve ERB
Varlık boru hattı ERB'yi otomatik olarak değerlendirir . Bu, bir CSS öğesine bir erb uzantısı eklerseniz (örneğin, application.css.erb
), asset_path
CSS kurallarınızda olduğu gibi yardımcıların kullanılabileceği anlamına gelir :
.class { background-image: url(<%= asset_path 'image.png' %>) }
Bu, başvurulan belirli bir varlığın yolunu yazar. Bu örnekte, app/assets/images/image.png
burada atıfta bulunulacak gibi varlık yükleme yollarından birinde bir resme sahip olmak anlamlı olacaktır. Bu görüntü public/assets
parmak izli bir dosya olarak zaten mevcutsa , o yola başvurulur.
Görüntü verilerini doğrudan CSS dosyasına gömme yöntemi olan bir veri URI'si kullanmak istiyorsanız asset_data_uri
yardımcıyı kullanabilirsiniz .
.logo { background: url(<%= asset_data_uri 'logo.png' %>) }
Bu, CSS kaynağına doğru biçimlendirilmiş bir veri URI'si ekler.
Kapanış etiketinin -%> stilinde olamayacağını unutmayın.