0Pricing
Tailwind CSS Academy · Lesson

Tailwind vs Traditional CSS

Compare utility-first styling with writing plain CSS and BEM, and learn when each approach shines.

The Old Way: Semantic CSS

The old way is semantic CSS: descriptive class names like .navbar or .card in a separate file, meant to describe purpose. Methods like BEM grew from this.

/* Traditional CSS */
.hero-title {
  font-size: 3rem;
  font-weight: 800;
  color: #111827;
  letter-spacing: -0.025em;
  margin-bottom: 1.5rem;
}

<h1 class="hero-title">Build Something Great</h1>

What Is BEM?

BEM means Block, Element, Modifier: a Block like .card, an Element like .card__title, and a Modifier like .card--featured. Clear, but it takes discipline.

<!-- BEM naming convention -->
<div class="card card--featured">
  <img class="card__image" src="thumb.jpg" alt="" />
  <h2 class="card__title">Featured Post</h2>
  <p class="card__description">A short summary...</p>
  <a class="card__link card__link--primary" href="#">Read More</a>
</div>

All lessons in this course

  1. Utility-First CSS Explained
  2. Installing and Configuring Tailwind
  3. Your First Tailwind Page
  4. Tailwind vs Traditional CSS
← Back to Tailwind CSS Academy