- Published on
Understanding Tailwind CSS, Basic Classes and Concepts
- Authors
- Name
- codewithininsight
- @
Tailwind CSS is a utility-first CSS framework that makes it easy to create responsive and modern web designs. Instead of writing custom CSS, Tailwind provides a set of pre-defined utility classes for building user interfaces directly in your HTML. In this guide, weโll cover the basic classes and concepts of Tailwind CSS to get you started.
What is Tailwind CSS?
Tailwind CSS is a highly customizable, utility-first CSS framework. Unlike traditional CSS frameworks like Bootstrap, Tailwind doesnโt come with pre-styled components. Instead, it provides a toolkit of utility classes that you can mix and match to style your elements.
Why Use Tailwind CSS?
- Utility-First Approach:
- Write classes directly in your markup for rapid development.
- Highly Customizable:
- Tailor the framework to your design system with ease.
- Responsive Design:
- Built-in support for responsive design using breakpoints.
Setting Up Tailwind CSS
To use Tailwind CSS, first install it in your project:
npm install tailwindcss postcss autoprefixer
npx tailwindcss init
Add Tailwind directives to your CSS file:
@tailwind base;
@tailwind components;
@tailwind utilities;
Basic Classes in Tailwind CSS
1. Typography
Tailwind provides classes to control font size, weight, color, and spacing.
<h1 class="text-4xl font-bold text-gray-900">Heading 1</h1>
<p class="text-base leading-7 text-gray-700">This is a paragraph styled with Tailwind CSS.</p>
text-{size}
: Sets the font size (e.g.,text-sm
,text-lg
).font-{weight}
: Adjusts the font weight (e.g.,font-light
,font-bold
).leading-{value}
: Controls line height for better readability.
2. Colors
Tailwind offers a robust color palette for backgrounds, text, borders, and more.
<div class="rounded-lg bg-blue-500 p-4 text-white">This is a blue background with white text.</div>
bg-{color}-{shade}
: Sets the background color.text-{color}-{shade}
: Defines the text color.border-{color}-{shade}
: Styles the border color.
3. Spacing
Control padding and margins with simple utilities.
<div class="m-4 p-6">Padding of 6 units and margin of 4 units.</div>
p-{value}
: Adds padding.m-{value}
: Adds margin.px-{value}
/py-{value}
: Adds horizontal/vertical padding.mx-{value}
/my-{value}
: Adds horizontal/vertical margins.
4. Flexbox and Grid
Tailwind makes it easy to create layouts using Flexbox and Grid.
Flexbox Example:
<div class="flex items-center justify-between">
<div>Left</div>
<div>Right</div>
</div>
flex
: Enables Flexbox.justify-{value}
: Controls horizontal alignment (e.g.,justify-center
,justify-between
).items-{value}
: Controls vertical alignment (e.g.,items-center
).
Grid Example:
<div class="grid grid-cols-3 gap-4">
<div>Column 1</div>
<div>Column 2</div>
<div>Column 3</div>
</div>
grid
: Enables Grid layout.grid-cols-{value}
: Defines the number of columns.gap-{value}
: Sets the spacing between grid items.
5. Borders and Rounded Corners
Tailwind provides utilities for borders and corner rounding.
<div class="rounded-lg border border-gray-300 p-4">This box has a border and rounded corners.</div>
border
: Adds a border.border-{color}-{shade}
: Sets the border color.rounded
,rounded-lg
,rounded-full
: Rounds the corners.
6. Shadows
Add depth to your elements with box shadows.
<div class="p-4 shadow-md">This box has a medium shadow.</div>
shadow-sm
,shadow-md
,shadow-lg
: Apply different shadow intensities.
7. Hover and Focus States
Tailwind makes it easy to add hover and focus styles.
<button
class="rounded bg-blue-500 px-4 py-2 text-white hover:bg-blue-700 focus:ring-2 focus:ring-blue-300"
>
Hover Me
</button>
hover:bg-{color}
: Changes background color on hover.focus:ring-{color}
: Adds a focus ring.
Responsive Design in Tailwind CSS
Tailwind uses breakpoints to make designs responsive:
sm
: 640pxmd
: 768pxlg
: 1024pxxl
: 1280px
Example:
<div class="text-sm sm:text-base md:text-lg lg:text-xl">Responsive Text</div>
sm:text-base
: Text size changes for small screens.md:text-lg
: Text size changes for medium screens.
Conclusion
Tailwind CSS simplifies the process of building modern, responsive websites by providing pre-defined utility classes. Mastering these basic classes will enable you to create beautiful and functional designs with minimal effort.
For more information, check out the official Tailwind CSS documentation.