Linkowanie do grafiki w plikach css

Witajcie,
Pytanie jak w temacie w jaki sposób linkować np w css grafike znajdującą się w images/logo.png. Jeśli zrobie to normalnie …/images/logo.png to dostaję 404.Jak powinienem zrobić to prawidłowo?
Pozdrawiam
Artur
Edit: Ok znalzłem już odpowiedź

http://edgeguides.rubyonrails.org/asset_pipeline.html#coding-links-to-assets

I żeby to samo zrobić w JS to trzeba skorzystać z preprocesora ERB? Nie ma innego wyjścia?

Generalnie możesz zawsze wbić na sztywno /assets/logo.png - pomijasz sumę kontrolną i ryzykujesz sprzeczki z cache. To zadziała jeśli będziesz miał włączone assets pipeline, ale zgaduję, że masz.

co to znaczy ryzykuje?

Tzn. podając ścieżkę na sztywno ryzykujesz to że przeglądarka nie wczyta nowej wersji tego pliku tylko starą znajdującą się w cache. Dlatego przy mechanizmach zarządzania zasobami strony dodaje się zazwyczaj /assets/logo.png?losowystringzwersją aby przeglądarka przy następnym deployu/zmianie odświeżyła pliki.

Zasadniczo tak. Ale skoro i tak lepiej ładowane js-em obrazki preloadować w jakimś schowanym kontenerze… :wink:

Dlaczego właściwie lepiej?

zeby ich nie ładować podczas akcji wywoływanej jsem, tylko żeby już sobie czekały załadowane

Tyle się jeszcze zdołałem domyślić. :wink:
Bardziej chciałem zapytać, dlaczego lepiej wszystko załadować od razu na starcie strony, zamiast doładowywać później asynchronicznie? Są technologie, np. biblioteka lazyload, które przyjęły wręcz odwrotne założenie.