Как создавать условия для css в Laravel

Как правильно задать условия для отображения блоков в Laravel ? То есть в коде для отображения какой либо информации делается как то так

@if( $item->colection == 0) 
Тут не чего нету
@esle 
Тут что-то было
@endif

Можно ли сделать это для таблицы стилей ? У меня есть код который необходимо по-разному отображать на страницах, если быть точнее то он меняется только на главной странице, на всех остальных остается без изменений.

На сколько я понимаю это можно сделать путём проверки URL адреса страницы на которой находится пользователь, или как то иным способом ?

Нашёл код

@if (Request::ulr() === '')
Block 1
@esle
Block 2
@endif

Но не понял, мне в сравнение вставить name url страницы, или же ссылку из браузерной строки ?


Ответы (3 шт):

Автор решения: boneskhv

В вашем основном шаблоне сделайте секцию специальную для стилей @yield('css'). А потом в шаблоне главной страницы сделайте так:

@section('css')
<style>
    //Тут ваши стили
</style>
@endsection
→ Ссылка
Автор решения: Yura Lons

Так как CSS был указан в шапке в тегах <style>, то помогло следующие решение Добавить условие проверки

@if(Route::current(['main.index'])->getName() == 'main.index')
#style_code_here
@else
#style_code_here_2
@endif

Таким образом мы проверяем если имя в роутах такое же какое заявлено у нас то выдаем ему первый блок, а если нет, то второй!

→ Ссылка
Автор решения: Walfter

Опишите ваши стили а через условие применяйте модификаторы для блока

$condition = Request::is('/');

<body class="other classes @if($condition) modifier @endif "></body>

Или через тернарный оператор

<body class="other classes {{ $condition ? 'modifier' : '' }}"></body>

В самой таблице стилей можете ниже основного правила описать дополнительно правило

.other.classes {
    color: red;
    &.modifier {
        color: black;
    }
}
→ Ссылка