0

为什么我无法让图像工作。我正在尝试这个:

background-image: url(jBootstrap/images/ui-icons_222222_256x240.png);

它不起作用。当我尝试通过 URL 访问它时,出现错误:

无法处理资产 [stylesheets/jBootstrap/images/ui-icons_222222_256x240.png]。

无法获取任何图像,尝试了多种目录,但仍然无法正常工作。当我在普通的 html-css 上执行此操作时,它可以完美运行,但在 laravel 中却不行。我究竟做错了什么 ?

顺便说一句,如果有帮助,我正在使用 Basset。

编辑 1

还包括有关我的公共文件夹的部分结构和由 basset 生成的 html 链接的附加信息:

  • 上市/
    • 样式表/
      • jBootstrap/
        • 图片/
          • ui-icons_222222_256x240.png
      • main.cssit contains the background-image...

当包含 css 文件时,在源代码中我看到:

<link rel="stylesheet" type="text/css" href="http://localhost/Job/worker/myapp/public/7n3C5wypAmTi8VT8/application/stylesheets/main.css" />

编辑 2

添加我的 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>

编辑 3

尝试了另一种方式:
public/stylesheets/main.css
public/stylesheets/abc.jpg
main.css我有代码:body { background-image: url('abc.jpg') }我什么也没得到......

请帮助,现在苦苦挣扎2天...

4

3 回答 3

1

发现问题了……它是 Basset 包,它需要放入$collection->apply('UriRewriteFilter');配置中。

于 2013-05-15T16:24:24.970 回答
0

我自然会假设这里有一个(或两个)事情不正确:

  1. .htaccess的文件在重写时未检查现有文件。检查该文件中是否RewriteCond {%REQUEST_FILENAME} !-f存在。

  2. 您不是从根请求您的背景图像,即绝对。尝试使用前导斜杠请求资源。例如,不要调用 ,而是foo.png尝试调用/foo.png

于 2013-05-14T05:37:33.680 回答
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');
        }
 ),

这对我有用。

于 2013-09-06T04:09:09.203 回答