Laravel 4 background-image:url

时间:2013-06-08 03:55:48

标签: laravel laravel-4

我试图让我的图像的完整路径全面工作,而不是在我的页面上使用image / blah / blah我让他们使用刀片模板引擎

 {{ HTML::style('css/bootstrap.css'); }}
 {{ HTML::style('css/bootstrap-responsive.css'); }} 
 {{ HTML::style('css/style.css'); }}
 {{ HTML::script('js/jquery.js'); }}

但我正在尝试将背景图像用于菜单栏

background-image: url(images/transparentBackground.png)

有没有办法使用Blade模板来获取该图像以加载完整路径?

如果我使用

background-image: url({{ HTML::script('images/transparentBackground.png'); }})

它不起作用并返回错误。

6 个答案:

答案 0 :(得分:11)

嗯,首先,你想要使用

url({{ URL::asset('images/transparentBackground.jpg') }})

而不是

`HTML::script()`.

如果您使用内联样式,那将会有效。

如果您尝试让刀片解析链接的样式表,那就永远不会起作用。也不应该。在这种情况下,您可能希望使用像Sass和Compass这样的东西。通过正确的配置,您可以拥有自动生成图像的完整路径。

答案 1 :(得分:3)

我不太了解你的问题。你为什么需要一条完整的道路?这是css。图像文件夹必须靠近css文件。

在您的情况下,请尝试background-image: url(../images/transparentBackground.png)

-- public (folder)
---- css/style.css
---- images/transparentBackground.png 

答案 2 :(得分:1)

您可以使用辅助函数Here

以下是使用辅助函数

的背景图像示例

background-image: url("{{ public_path('images/bg_invoice.jpg') }}");

public_path是Laravel应用程序中公用文件夹路径的辅助函数,而images是public中的嵌套文件夹。感谢

答案 3 :(得分:0)

如果您正在编写内联样式(通过HTML标记中的style =“”属性,那么@Rogier建议可以使用。

如果你想使用刀片来生成CSS,那么你可以通过创建一个CSS控制器并将你的变量传递给一个刀片模板来渲染CSS(记住将内容类型头设置为text / css)来实现。

答案 4 :(得分:0)

HTML :: image('url / to / image.jpg','alt text');

OR

可以使用

img src="{{ URL::to_asset('url/to/image.jpg') }}

答案 5 :(得分:0)

对于Laravel 5,只需这样做

style="background-image:url({{ asset('Images/jamb.jpg') }});"

就像@Khandad Niazi所说的仅适用于内联CSS