Laravel 5 issues with linking css assets

2019-04-07 12:12发布

问题:

am currently trying to port my laravel 4 application to laravel 5 . i have added "illuminate/html": "5.*" to composer and also the facade and service providers to config. i was using the following syntax to link to my css files

{{ HTML::style('css/bootstrap.min.css') }}
{{ HTML::style('css/style.css') }}

but in laravel 5 , my views output is all broken , with the page displaying like the below screenshot .

what could i be missing here ? is there any changes to the blade syntax in laravel 5 ?

回答1:

found the answer here on this thread and here . on the second thread Taylor Otwell gives the answer himself . In laravel 5 , the laravel 4 default syntax {{ code }} , will escape the data output . if you want unescaped html data, you have to use the new syntax

{!! HTML::style('css/style.css') !!}

if you want to revert to previous syntax you can use

Blade::setRawTags('{{', '}}');


回答2:

  1. Check if the assets are there, and are being linked properly.
  2. check permission and set chmod to 777 (Unix).
  3. If that doesn't work, use <link rel="stylesheet" type="text/css" href="{{asset('relative/to/public/folder.css')}}" > manually.


回答3:

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


回答4:

Change your code to the below

{!! Html::style( asset('css/bootstrap.min.css')) !!}
{!! Html::style( asset('css/style.css')) !!}


回答5:

If you want to use plain HTML then you can also use it like this-

    <link rel="stylesheet" href="/css/style.css">