@arnoldo.moen
To create a dropdown navigation menu with Laravel and Tailwind CSS, you can follow these steps:
- Create a new Laravel project and install Tailwind CSS:
1
2
3
4
5
|
composer create-project --prefer-dist laravel/laravel project-name
cd project-name
npm install
npm install tailwindcss
npx tailwindcss init
|
- Add the following code to your Blade template file (e.g., resources/views/layouts/app.blade.php) to create a dropdown nav menu:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
<div class="bg-gray-800">
<div class="container mx-auto">
<nav class="flex justify-between items-center py-4">
<div class="flex">
<a href="/" class="text-white mr-4">Home</a>
<div class="dropdown inline-block relative">
<button class="text-white focus:outline-none">Dropdown</button>
<ul class="dropdown-menu absolute hidden text-gray-700 pt-1">
<li><a href="#" class="bg-gray-200 hover:bg-gray-400 py-2 px-4 block whitespace-no-wrap">Option 1</a></li>
<li><a href="#" class="bg-gray-200 hover:bg-gray-400 py-2 px-4 block whitespace-no-wrap">Option 2</a></li>
</ul>
</div>
</div>
</nav>
</div>
</div>
|
- Add the following CSS code to your stylesheets or in the head section of your HTML document:
1
2
3
4
5
6
7
|
.dropdown:hover .dropdown-menu {
display: block;
}
.dropdown-menu {
display: none;
}
|
- Create a JavaScript file (e.g., resources/js/dropdown.js) to handle the dropdown menu functionality:
1
2
3
4
5
6
7
8
9
10
|
document.addEventListener('DOMContentLoaded', function () {
var dropdowns = document.querySelectorAll('.dropdown');
dropdowns.forEach(function (dropdown) {
dropdown.addEventListener('click', function () {
var menu = this.querySelector('.dropdown-menu');
menu.classList.toggle('hidden');
});
});
});
|
- Compile your JavaScript file using Laravel Mix:
Now you should have a dropdown navigation menu on your Laravel project using Tailwind CSS.