Laravel 5在哪里放置以及如何访问css内的图像

时间:2016-04-06 14:00:07

标签: css laravel-5

在Laravel 5中,我应该在哪个目录中存储图像(用于背景)以及如何在CSS文件中访问它。我的CSS文件位于public/css目录中。我已尝试将图片放在public/imagespublic/assets/images中,但无法正常工作,甚至无法直接从网络浏览器访问该图片。

5 个答案:

答案 0 :(得分:5)

在CSS中,您可以访问公共/图像中的图像,例如

../images/imgename.jpg

在刀片模板中,您可以使用类似

的内容
{{ asset("images/imagename.jpg") }}

答案 1 :(得分:1)

public/内的所有文件都可以通过网络浏览器访问,只需将图片或css放在那里。例如:

public/images/foo.png
public/css/style.css

通常在此结构中只需要执行background: url('../images/foo.png')

但是,有些人在使用像background: url('/images/foo.png')这样的绝对路径时遇到了问题,为什么?因为laravel安装是在htdocs/public_html/下进行的,具有以下结构:

/home/user/public_html/laravel/public/

如果您使用上述结构,则需要background: url('/laravel/images/foo.png')

答案 2 :(得分:0)

public没问题。您应该通过例如/images/xy.jpg/assets/images/xy.jpg在css文件中访问它们。 /在开头有意义引用根目录。

如果这不起作用,请提供图像路径,css和不适用于图像的示例css文件。

答案 3 :(得分:0)

您可以使用:url(http://localhost:8000/imgs/image_name.extension),如下所示:http://localhost:8000/img/spacer.png但请注意在部署更改localhost:8000中的开发环境中为您的域名执行此操作

答案 4 :(得分:0)

对我来说,答案是使用波浪号(〜)代替点:

因此CSS中的整行变成:

background: url('~/storage/images/DownArrow.png') no-repeat right #fff;

该存储文件夹位于公用文件夹中。

使用Laravel 5.7,我一直在运行'npm run dev'并且得到: 模块构建失败:ModuleNotFoundError:未找到模块:错误:无法解析“ C:\ xampp \ htdocs \ websitename \ resources \ sass”中的“ ./storage/images/DownArrow.png”

在另一个论坛中感谢“流失”。他还说:“在有关静态资产的Vue CLI章节中对此没有很好的记录。”