让我们详细说明我的问题。认为我们有3个模板文件1.Master 2.Child(home)3.navbar布局(包含在家中)
Mater->首页 - >导航栏
我有2个外部css文件,有这个CSS
p
{
color:red;
}
和
p
{
color:blue;
}
第一个css文件在master.blade.php中链接,第二个css文件链接到navbar.blade.php
我希望navbar的文本颜色为蓝色,而home(除了navbar)的文本颜色为红色。
现在输出为蓝色(覆盖在master中声明的css)。
我不想修改css(特异性),是否有类似css范围的laravel。
你熟悉blade into laravel吗?
我认为你应该在你的主人中定义一个屈服部分
@yield('css')
然后在导航栏或其他地方调用它......就像这样
@section('css')
p
{
color:red;
}
@endsection
和其他文件
@section('css')
p
{
color:blue;
}
@endsection
为什么不检查当前路由,然后在刀片文件中内联样式属性中的颜色:
@if(request()->is('/'))
<!-- Homepage -->
<p style="color:red">Hello</p>
@else
<!-- All Other Pages -->
<p style="color:blue">Hello</p>
@endif
要么
<p style="color:{{ request()->is('/') ? 'red' : 'blue' }}">Hello</p>
你为什么不直接为不同的段落块分配ID并以这种方式定位?或者甚至更好,为每种颜色创建一个实用程序类。
.text-red {
color: red;
}
然后...
<p class="text-red">Lorem ipsum[...]</p>