Tailwind CSS Academy · Lekcja

Tailwind a tradycyjny CSS

Porównać stylowanie utility-first z pisaniem zwykłego CSS i użyciem BEM oraz dowiedzieć się, kiedy najlepiej sprawdza się każde z tych podejść.

Lekcja 4 z 413 kroki

Tailwind a tradycyjny CSS to bezpłatna lekcja Tailwind CSS Academy na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Tailwind CSS Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Tailwind CSS Academy zawiera 4 lekcji w sumie.

Dawne podejście: semantyczny CSS

Dawne podejście to semantyczny CSS: opisowe nazwy klas, takie jak .navbar lub .card, umieszczane w osobnym pliku i określające przeznaczenie elementów. Z tego podejścia wyrosły między innymi metody takie jak BEM.

/* 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>

Czym jest BEM?

BEM oznacza Block, Element, Modifier: blok, taki jak .card, element, taki jak .card__title, oraz modyfikator, taki jak .card--featured. To przejrzyste podejście, ale wymaga dyscypliny.

<!-- 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>

Ta sama karta w Tailwind

Oto ta sama karta w Tailwind. Nie ma żadnego pliku CSS — każda decyzja jest widoczna w HTML: rounded-xl shadow-md określają kształt, a text-xl font-bold tytuł.

<!-- Tailwind equivalent -->
<div class="rounded-xl shadow-md overflow-hidden bg-white border border-indigo-200">
  <img class="w-full h-48 object-cover" src="thumb.jpg" alt="" />
  <div class="p-6">
    <h2 class="text-xl font-bold text-gray-900 mb-2">Featured Post</h2>
    <p class="text-gray-500 text-sm mb-4">A short summary...</p>
    <a class="text-indigo-600 font-semibold hover:underline" href="#">Read More</a>
  </div>
</div>

Problem specyficzności w tradycyjnym CSS

Tradycyjny CSS ma problem ze specyficznością: reguły rywalizują o to, która ma pierwszeństwo, co prowadzi do powszechnego używania !important i kruchego kodu. Klasy utility Tailwind pozostają przewidywalne.

/* Specificity conflict example */
.sidebar .card .card__title { color: red; }    /* specificity: 0,3,0 */
.featured-section .card__title { color: blue; } /* specificity: 0,2,0 */

/* Which color wins? Depends on file order AND specificity */
/* This becomes unmanageable at scale */

Rozrost pliku CSS w czasie

Zwykłe pliki CSS rosną bez końca, bo nikt nie ma odwagi usuwać starych reguł. Tailwind usuwa nieużywane klasy utility podczas budowania, więc w CSS nie gromadzą się zbędne style.

Przełączanie między plikami

W klasycznym CSS przy każdej drobnej zmianie musisz przełączać się między kodem HTML i CSS. Tailwind pozwala pozostać w kodzie HTML, co znacznie przyspiesza pracę.

<!-- With Tailwind: no CSS file to open -->
<button class="py-2 px-4 bg-green-500 text-white rounded hover:bg-green-600">
  Submit
</button>

<!-- With traditional CSS: go find/create .submit-button in your CSS file -->
<button class="submit-button">Submit</button>

Kiedy tradycyjny CSS nadal wygrywa

Czasami tradycyjny CSS nadal wygrywa: przy stylowaniu kodu HTML firm trzecich, którego nie możesz edytować, przy złożonych animacjach keyframe oraz w publicznym arkuszu stylów dla innych programistów.

/* Complex animation: better in CSS than utility classes */
@keyframes wave {
  0%, 100% { transform: rotate(-10deg); }
  50% { transform: rotate(10deg); }
}
.wave-animation {
  animation: wave 1s ease-in-out infinite;
}

Spójność: skale a wartości dowolne

Tailwind po cichu wymusza spójność. Zamiast wpisywać ręcznie padding 13px lub 17px, wybierasz wartość ze skali co 4 px, dzięki czemu projekty są domyślnie harmonijne.

<!-- Tailwind spacing: always consistent multiples -->
<div class="p-4">  <!-- 16px -->
<div class="p-6">  <!-- 24px -->
<div class="p-8">  <!-- 32px -->

<!-- vs Traditional CSS: any value is valid -->
div { padding: 13px; } /* Why 13? Nobody knows. */

Porównanie wydajności

Czy wszystkie te klasy zaszkodzą wydajności? Nie — powtarzające się klasy świetnie się kompresują, a Tailwind CSS jest zwykle znacznie mniejszy niż niezoptymalizowany arkusz stylów.

Wprowadzanie zespołu: Tailwind a CSS

Wprowadzanie nowych osób do zespołu również jest łatwiejsze. Każdy, kto zna dokumentację Tailwind, potrafi czytać i edytować dowolny komponent, ponieważ nazwy klas znaczą to samo w każdym projekcie.

Wybór właściwego podejścia

Co więc wybrać? Tailwind sprawdzi się w interfejsie aplikacji i kontrolowanych przez Ciebie systemach projektowych, a tradycyjny CSS w motywach i kodzie HTML z CMS-a. Wiele projektów z powodzeniem korzysta z obu podejść.

Szybkie sprawdzenie

Szybkie sprawdzenie! Porównaj w myślach Tailwind i CSS. ⚖️

Podsumowanie lekcji

Dobra robota! Tradycyjny CSS nazywa elementy w plikach, a Tailwind składa style w HTML. BEM nie rozwiązuje problemu rozrastających się plików, a skala zapewnia spójność. Następnie zajmiesz się typografią.

Bezpłatny start

Ucz się HTML dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
30
Lekcje
120

Często zadawane pytania

Czy lekcja „Tailwind a tradycyjny CSS” jest bezpłatna?

Tak — pełny tekst „Tailwind a tradycyjny CSS” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Tailwind CSS Academy, przejdź na CoddyKit PRO. Kurs Tailwind CSS Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „Tailwind a tradycyjny CSS”?

Porównać stylowanie utility-first z pisaniem zwykłego CSS i użyciem BEM oraz dowiedzieć się, kiedy najlepiej sprawdza się każde z tych podejść. Ćwiczysz Tailwind CSS Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Tailwind CSS Academy?

Nie wymagamy żadnego doświadczenia. Tailwind CSS Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Tailwind a tradycyjny CSS”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Tailwind CSS Academy?

Tak. Każda lekcja Tailwind CSS Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wyjaśnienie podejścia utility-first w CSS
  2. Instalacja i konfiguracja Tailwind
  3. Pierwsza strona w Tailwind
  4. Tailwind a tradycyjny CSS
← Powrót do Tailwind CSS Academy