As we all know that Tailwind doesn’t include pre-built button components like Bootstrap do.
It can be difficult for devs coming from a component-based CSS framework. (At least it was difficult for me) While it can be frustrating for beginners but it is by design because Tailwind is a utility-first CSS framework.
Also Read - Pentagon Menu using CSS
Well, don’t need a pre-built button component we can create our own. We can use Tailwind utility classes to create our own button component.
All the source code for this project is available at Codepen.
Here’s how to create the Tailwind CSS button.
Simple tailwind CSS button
This is a simple tailwind CSS button in red color. Ya, I like red.
<button
class="bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded"
>
Simple Button
</button>
Pill tailwind CSS button
We can turn the above button to a pill button by changing the utility class rounded to rounded-full
<button
class="bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 rounded-full"
>
Pill Button
</button>
Outline tailwind CSS button
For an outline button, we need to add a border to it
<button
class="bg-transparent hover:bg-red-500 text-red-700 font-semibold hover:text-white py-2 px-4 border border-red-500 hover:border-transparent rounded"
>
Outline Button
</button>
Border tailwind CSS button
We already know how to add a border in tailwind CSS so why not mix the simple button with it
<button
class="bg-red-500 hover:bg-red-700 text-white font-bold py-2 px-4 border border-red-700 rounded"
>
Border Button
</button>
Disabled tailwind CSS button
Now you must be wondering that what if I don’t want the user to click my button (for some reason or you just like to bully your users) Luckily for you, there’s a solution
<button
class="bg-red-500 text-white font-bold py-2 px-4 rounded opacity-50 cursor-not-allowed"
>
Disabled Button
</button>
Group tailwind CSS button
What if you like unity and would like your buttons to be together then this is for you
<div class="inline-flex">
<button
class="bg-red-300 hover:bg-red-400 text-red-800 font-bold py-2 px-4 rounded-l"
>
Prev
</button>
<button
class="bg-red-300 hover:bg-red-400 text-red-800 font-bold py-2 px-4 rounded-r"
>
Next
</button>
</div>
Icon tailwind CSS button
You can also create an icon button with tailwind CSS
<button
class="bg-red-300 hover:bg-red-400 text-red-800 font-bold py-2 px-4 rounded inline-flex items-center"
>
<svg
class="fill-current w-4 h-4 mr-2"
xmlns="http://www.w3.org/2000/svg"
viewBox="0 0 20 20"
>
<path d="M13 8V2H7v6H2l8 8 8-8h-5zM0 18h20v2H0v-2z" />
</svg>
<span>Icon Button</span>
</button>
Remember sharing is caring! I need that juicy money from ads.