PHP code example of gehrisandro / tailwind-merge-laravel
1. Go to this page and download the library: Download gehrisandro/tailwind-merge-laravel library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
gehrisandro / tailwind-merge-laravel example snippets
// circle.blade.php
<div {{ $attributes->twMerge('w-10 h-10 rounded-full bg-red-500') }}></div>
// your-view.blade.php
<x-circle class="bg-blue-500" />
// output
<div class="w-10 h-10 rounded-full bg-blue-500"></div>
use TailwindMerge\Laravel\Facades\TailwindMerge;
// conflicting classes
TailwindMerge::merge('block inline'); // inline
TailwindMerge::merge('pl-4 px-6'); // px-6
// non-conflicting classes
TailwindMerge::merge('text-xl text-black'); // text-xl text-black
// with breakpoints
TailwindMerge::merge('h-10 lg:h-12 lg:h-20'); // h-10 lg:h-20
// dark mode
TailwindMerge::merge('text-black dark:text-white dark:text-gray-700'); // text-black dark:text-gray-700
// with hover, focus and other states
TailwindMerge::merge('hover:block hover:inline'); // hover:inline
// with the important modifier
TailwindMerge::merge('!font-medium !font-bold'); // !font-bold
// arbitrary values
TailwindMerge::merge('z-10 z-[999]'); // z-[999]
// arbitrary variants
TailwindMerge::merge('[&>*]:underline [&>*]:line-through'); // [&>*]:line-through
// non tailwind classes
TailwindMerge::merge('non-tailwind-class block inline'); // non-tailwind-class inline
TailwindMerge::merge('h-10 h-20'); // h-20
TailwindMerge::merge(['h-10', 'h-20']); // h-20
TailwindMerge::merge(['h-10', 'h-20'], 'h-30'); // h-30
TailwindMerge::merge(['h-10', 'h-20'], 'h-30', ['h-40']); // h-40
// circle.blade.php
<div {{ $attributes->twMerge('w-10 h-10 rounded-full bg-red-500') }}></div>
// your-view.blade.php
<x-circle class="bg-blue-500" />
@twMerge('w-10 h-10 rounded-full bg-red-500 bg-blue-500') // w-10 h-10 rounded-full bg-blue-500
// or multiple arguments
@twMerge('w-10 h-10 rounded-full bg-red-500', 'bg-blue-500') // w-10 h-10 rounded-full bg-blue-500
// config/tailwind-merge.php
return [
'blade_directive' => 'customTwMerge',
];
// config/tailwind-merge.php
return [
'blade_directive' => null,
];
use TailwindMerge\Laravel\Facades\TailwindMerge;
TailwindMerge::merge('w-10 h-10 rounded-full bg-red-500 bg-blue-500'); // w-10 h-10 rounded-full bg-blue-500
twMerge('w-10 h-10 rounded-full bg-red-500 bg-blue-500'); // w-10 h-10 rounded-full bg-blue-500
// config/tailwind-merge.php
return [
'classGroups' => [
'font-size' => [
['text' => ['very-large']]
],
],
];
bash
php artisan vendor:publish --provider="TailwindMerge\Laravel\TailwindMergeServiceProvider"
blade
// button.blade.php
<button {{ $attributes->withoutTwMergeClasses()->twMerge('p-2 bg-gray-900 text-white') }}>
<svg {{ $attributes->twMergeFor('icon', 'h-4 text-gray-500') }} viewBox="0 0 448 512"><path d="..."/></svg>
{{ $slot }}
</button>