为什么我无法让图像生效。我正在尝试这个:
background-image: url(jBootstrap/images/ui-icons_222222_256x240.png);
它不起作用。当我试图访问它时,我得到一个错误:
资产[stylesheets / jBootstrap / images / ui-icons_222222_256x240.png]无法处理。
无法获取任何图像,在目录的许多变体中尝试过但仍无法正常工作。当我在普通的html-css上这样做时,它可以完美地工作,但不是在laravel中。我做错了什么?
顺便说一下,如果它有帮助,我正在使用Basset。
还包括有关我的公共文件夹的部分结构和basset生成的html链接的附加信息:
it contains the background-image...
当包含css文件时,在源代码中我看到:
<link rel="stylesheet" type="text/css" href="http://localhost/Job/worker/myapp/public/7n3C5wypAmTi8VT8/application/stylesheets/main.css" />
添加我的public / .htaccess文件:
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)/$ http://%{HTTP_HOST}/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
尝试另一种方式:
public/stylesheets/main.css
public/stylesheets/abc.jpg
在main.css
我有代码:body { background-image: url('abc.jpg') }
,我什么也没得到......
请帮忙,现在挣扎2天......
答案 0 :(得分:1)
发现问题......这是Basset包,它需要将$collection->apply('UriRewriteFilter');
放入配置中。
答案 1 :(得分:0)
我自然会认为这里有一个(或两个)错误:
重写时,.htaccess
文件未检查现有文件。检查该文件中是否存在RewriteCond {%REQUEST_FILENAME} !-f
。
您没有从根请求您的背景图片,即绝对。尝试使用前导斜杠请求资源。例如,请尝试拨打foo.png
。
/foo.png
醇>
答案 2 :(得分:0)
尝试在您的收藏中使用setArguments('../')
'collections' => array(
'application' => function($collection) {
$collection->add('../vendor/twitter/bootstrap/less/bootstrap.less')->apply('Less');
$directory = $collection->directory('assets/stylesheets', function($collection) {
$collection->add('main.css');
})->apply('UriRewriteFilter')->setArguments('../')->apply('CssMin');
}
),
这对我有用。