Laravel Blade指令正确地附加模板CSS样式来自' public'夹

时间:2014-01-30 16:01:29

标签: php css laravel blade

我是一个laravel新手,我正在尝试将css文件导入到views文件夹中的我的刀片模板中。

我在路线文件中有这个:

Route::get('/', function()
{
return View::make('index');
});
'views'文件夹中的

index.blade.php在标题部分中包含以下代码:

{{HTML::style('css/common.css');}}
</head>

common.css是公共文件夹中的文件,位于css子文件夹中。

index.blade.php视图运行没有错误,显示所有html元素,但没有css。我在这里失踪了什么?任何帮助将不胜感激。

编辑:看起来问题与某些.htaccess或xampp配置有关。 页面中生成的href显示[http://localhost/testLaravel/server.php/css/common.css],这就是它没有获取css代码的原因。正确的路径是[http://localhost/testLaravel/public/css/common.css]。

mod_rewrite已启用,我的.htacess文件为:

<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
    Options -MultiViews
</IfModule>

RewriteEngine On

# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]

# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>

任何有助于摆脱路径的server.php部分的帮助都会非常有用。

1 个答案:

答案 0 :(得分:9)

尝试使用以下片段更新您的模板

{{ HTML::style( asset('css/common.css') ) }}

或手动方式

<link href="{{ asset('css/common.css') }}" rel="stylesheet">

asset()函数是公用文件夹路径的“快捷方式”。