Czy w Sass istnieje zmienna w ścieżce obrazów?
Chcę mieć jedną zmienną, która zawiera ścieżkę główną do wszystkich moich obrazów w moim pliku CSS. Nie mogę do końca dowiedzieć się, czy jest to możliwe w czystym Sass (rzeczywisty projekt internetowy nie jest RoR, więc nie mogę użyć asset_pipeline lub żadnego z tych fantazyjnych jazzów).
Oto mój przykład, który nie działa. Podczas kompilacji jest to pierwsza instancja zmiennej we właściwościach URL tła mówiąc ("Invalid CSS after "..site/background": expected ")"
).
Definiowanie funkcji zwracającej ścieżkę:
//Vars
$assetPath : "/assets/images";
//Functions
@function get-path-to-assets($assetPath){
@return $assetPath;
}
Za pomocą Funkcja:
body {
margin: 0 auto;
background: url($get-path-to-assets/site/background.jpg) repeat-x fixed 0 0;
width: 100%; }
Każda pomoc będzie mile widziana. 4 answers
Próbowałeś składni interpolacji ?
background: url(#{$get-path-to-assets}/site/background.jpg) repeat-x fixed 0 0;
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-08 02:07:24
No need for a function:
$assetPath : "/assets/images";
...
body {
margin: 0 auto;
background: url(#{$assetPath}/site/background.jpg) repeat-x fixed 0 0;
width: 100%; }
Zobacz dokumenty interpolacyjne Po szczegóły.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-08 02:06:21
Szukałem odpowiedzi na to samo pytanie, ale chyba znalazłem lepsze rozwiązanie: http://blog.grayghostvisuals.com/compass/image-url/
Zasadniczo możesz ustawić ścieżkę obrazu w config.rb i używasz image-url () helper
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-03-22 17:15:24
Dodanie czegoś do powyższych poprawnych odpowiedzi. Używam NetBeans IDE i wyświetla błąd podczas używania url(#{$assetPath}/site/background.jpg)
tej metody. To był tylko błąd netbeans i brak błędu w kompilacji sass. Ale ten błąd przerywa formatowanie kodu w netbeans i Kod staje się brzydki. Ale kiedy używam go w cytatach, jak poniżej, pokazuje cud!
url("#{$assetPath}/site/background.jpg")
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-02 06:26:52