laravel中不同页面的不同样式表

时间:2016-12-29 07:10:40

标签: php html css laravel

我是laravel的新手。我有两个页面A和B使用表格。现在在我的layout.blade.php中,我只有一个样式表的链接,它影响A和B中的表。我只想要它在A和B中我有不同的样式表集。如何将样式表定位到页面?

4 个答案:

答案 0 :(得分:3)

您可以直接在这些视图中加载css文件,因此A将加载一个css而B将加载另一个。

layout.blade.php中使用条件加载的另一种方法:

@if (request()->is('pageA'))
    // Load CSS for A
@elseif (request()->is('pageB'))
    // Load CSS for B
@endif

答案 1 :(得分:0)

你可以在这些条件下使用sass css。在那个sass css中你可以使用if和else条件和检查变量。 请参阅以下链接以了解如何使用它。

http://thesassway.com/intermediate/if-for-each-while

答案 2 :(得分:0)

通常在这种情况下,你应该有一个只包含全局脚本和样式表的主布局,layouts/global.blade.php

<!doctype html>
<html lang="en-US">
<head>
    <title>Your website</title>

    @section('meta')
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
    @show

    @section('stylesheets')
        <link rel="shortcut icon" href="{{asset("favicon.ico")}}" type="image/x-icon"/>
        <link type="text/css" rel="stylesheet" href="{{asset("css/global.css")}}"/>
    @show

    @section('scripts')
        <script src="{{url("js/global.js")}}"></script>
    @show
</head>
<body>
@yield('content')
</body>
</html>

然后在page_a.blade.php中,扩展它并包含您自己的特定样式表:

@extends('layouts/global')

@section('stylesheets')
    @parent
    <link type="text/css" rel="stylesheet" href="{{url("css/page_a.css")}}"/>
@endsection

@section('scripts')
    @parent
    <script src="{{url("js/page_a.js")}}"></script>
@endsection

@section('content')
    Your page A content
@endsection

答案 3 :(得分:0)

我认为您可以在视图中创建如下所示的部分,例如:

@extends('layouts.master')

@section('styles')
   <link href="{{asset('assets/css/custom-style.css')}}" />
@stop

希望这会对你有所帮助。