Menguasai sepenuhnya rangka kerja Tailwind CSS: Dari sintaks asas hingga kemahiran praktikal yang lebih tinggi

Bacaan 3 minit
2026-03-19
2,574
Saya mendapat komisen apabila anda membeli-belah melalui pautan di bawah, tanpa sebarang kos tambahan kepada anda.

Apa itu Tailwind CSS?

Tailwind CSS adalah sebuah rangka kerja CSS yang berfokuskan pada kefungsian dan kepraktisan. Ia menyediakan senarai kelas praktikal yang bersifat rendah tahap (low-level) dan boleh digabungkan bersama-sama, membolehkan pembangun membina reka bentuk yang disesuaikan dengan cepat terus dalam kod HTML. Berbeza dengan rangka kerja seperti Bootstrap yang menyediakan komponen prabina (seperti butang, kad), Tailwind tidak menyediakan sebarang komponen dengan gaya yang tetap (fixed styles). Sebaliknya, Tailwind menawarkan kelas-kelas yang boleh digunakan untuk mencipta pelbagai elemen reka bentuk mengikut keperluan pembangun. text-centerp-4bg-blue-500 Kelas atom seperti ini membolehkan pembangun membina antara muka pengguna yang benar-benar unik dengan menggabungkan kelas-kelas tersebut. Ini seterusnya mengelakkan konflik gaya yang sering berlaku dalam CSS tradisional serta masalah jadual gaya yang menjadi terlalu besar dan sukar untuk diurus.

Falsafah utamanya adalah “kebebasan dalam batasan”. Kerangka ini mendefinisikan satu sistem reka bentuk yang direka dengan teliti, yang merangkumi jarak antara elemen, warna, saiz fon, titik pemutusan (breakpoints), dan sebagainya. Pembangun dapat bekerja dalam sistem ini sambil memastikan konsistensi reka bentuk, serta masih memiliki fleksibiliti yang tinggi. Kaedah ini sangat mempercepatkan proses reka bentuk prototaip dan pembangunan, kerana untuk membuat perubahan pada gaya reka bentuk, biasanya hanya perlu menambah atau mengurangkan elemen dalam kod HTML, atau mengubah nama kelas (class names), tanpa perlu berulang-alik antara fail CSS dan HTML.

Prinsip kerja utama

Inti dari Tailwind adalah sebuah plugin PostCSS. Semasa proses pembinaan (build), ia akan mengimbas semua fail templat dalam projek (seperti HTML, JavaScript, komponen Vue, React), mengenal pasti kelas-kelas yang digunakan, dan kemudian hanya menghasilkan kelas-kelas tersebut ke dalam fail CSS akhir. Proses ini dikenali sebagai “pembersihan gaya yang tidak digunakan” (cleaning unused styles), yang memastikan bahawa saiz fail CSS yang dihasilkan adalah yang paling kecil. Sebagai contoh, jika projek anda hanya menggunakan… text-red-500p-4Oleh itu, pada akhirnya, fail CSS hanya akan mengandungi definisi untuk kedua-dua kelas tersebut, dan bukan semua kelas yang terdapat dalam Tailwind.

Diperoleh daripada WEB\nDisyorkan untuk membaca. Panduan Permulaan untuk Tailwind CSS: Membina Antaramuka Pengguna (UI) yang Moden dan Responsif dari Kosong

Core Syntax and Basic Usage

Untuk mula menggunakan Tailwind, anda perlu menginstalnya melalui npm atau yarn terlebih dahulu, dan kemudian mengkonfigurasi proses pembinaannya (build process). Sebuah projek yang tipikal akan mempunyai fail konfigurasi PostCSS (seperti…). postcss.config.jsUntuk memasukkan plugin Tailwind, anda perlu mengikuti langkah-langkah berikut:

Pembantu Pembinaan Laman Web WordPress.com
Pembantu Pembinaan Laman Web WordPress.com
99.999% ketersediaan + kegagalan bencana merentas zon, sokongan 24 jam sehari, gunakan AI untuk membina laman web secara percuma apabila membeli pakej blog.
Pembantu Pembinaan Laman Web UltaHost
Pembantu Pembinaan Laman Web UltaHost
Lebih daripada 900 templat percuma yang boleh disesuaikan, dapatkan kemahiran SEO yang anda perlukan untuk meningkatkan pendedahan carian laman web anda.

Setelah dipasang dan dikonfigurasi, anda boleh menggunakan kelas-kelas praktikal yang tersedia secara langsung dalam kod HTML. Kelas-kelas ini mengikuti satu set peraturan penamaan yang mudah difahami.

Peraturan Penamaan Kelas Praktikal

Nama kelas dalam Tailwind biasanya mempunyai struktur “atribut-modifier-nilai”. Sebagai contoh:
* m-4m wakil margin4 Ia merupakan unit jarak (biasanya…) 1rem)。
* p-2p wakil padding2 Ia merupakan unit jarak yang lebih kecil.
* bg-blue-600bg wakil background-colorblue-600 Ia merupakan warna yang ke-600 dalam palet warna biru.
* text-xltext wakil font-sizexl Ia merupakan saiz font besar yang telah ditentukan terlebih dahulu.
* hover:bg-gray-100hover: Ia merupakan prefiks untuk variasi keadaan, yang menunjukkan bahawa sesuatu akan digunakan apabila kursor tetikus diletakkan di atasnya. bg-gray-100 Gaya ini.

Dengan kombinasi ini, anda boleh dengan cepat membuat butang biru yang mempunyai kesan “hover” (apabila kursor mouse diletakkan di atasnya):

<button class="bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded">
  点击我
</button>

Pengimplementasian Reka Bentuk Responsif

Tailwind menggunakan sistem titik pemotongan (breakpoints) yang mengutamakan penggunaan peranti mudah alih. Praffiks titik pemotongan yang lalai ialah… sm:md:lg:xl:2xl:Untuk mengaplikasikan gaya yang berbeza kepada saiz skrin yang berbeza, anda hanya perlu menambahkan prefiks yang sesuai di hadapan nama kelas tersebut.

Diperoleh daripada WEB\nDisyorkan untuk membaca. Panduan Pengenalan Komprehensif Tailwind CSS: Dari Konsep Asas Hingga Pembangunan Projek Sebenar

<div class="text-sm md:text-base lg:text-lg">
  <!-- 在手机上字体小,在中等屏幕上变为基准大小,在大屏幕上变为大字体 -->
  Teks ini akan berubah secara responsif (berdasarkan perubahan skrin atau peranti yang digunakan).
</div>
<div class="w-full md:w-1/2 lg:w-1/3">
  <!-- 元素宽度默认为全屏,在中等屏幕占一半,在大屏幕占三分之一 -->
</div>

Konfigurasi Lanjutan dan Penyesuaian (Advanced Configuration and Customization)

Walaupun Tailwind boleh digunakan secara langsung setelah dipasang, kekuatannya yang sebenar terletak pada keboleh disesuaikan yang tinggi. Semua konfigurasi berada dalam direktori akar projek. tailwind.config.js Ia dilakukan dalam fail tersebut.

Sistem Reka Bentuk yang Diperluas

Anda boleh dengan mudah memperluas atau menggantikan tetapan tema lalai dalam fail konfigurasi. Sebagai contoh, anda boleh menambah warna, jenis font, jarak antara elemen, atau titik pemutusan (breakpoints) yang disesuaikan dengan keperluan anda.

// tailwind.config.js
module.exports = {
  theme: {
    extend: {
      colors: {
        'brand-primary': '#1d4ed8',
        'brand-secondary': '#7e22ce',
      },
      spacing: {
        '128': '32rem',
        '144': '36rem',
      },
      fontFamily: {
        'custom': ['"Custom Font"', 'sans-serif'],
      }
    },
  },
  variants: {
    extend: {
      opacity: ['disabled'], // 为 opacity 实用类启用 `disabled:` 状态变体
      backgroundColor: ['active'], // 为背景色启用 `active:` 状态
    },
  },
  plugins: [],
}

Selepas konfigurasi, anda boleh menggunakannya dalam projek anda. bg-brand-primaryp-128font-custom Sudah termasuk kelas-kelas khusus yang dibuat sendiri (custom classes).

Pembantu Pembinaan Laman Web Bluehost
Menyediakan alat penciptaan laman web AI, sokongan chat dalam talian dan telefon 24/7, nama domain percuma setahun, CDN percuma, dan SLA waktu operasi 99.99%.

Menggunakan ekosistem plugin

Tailwind mempunyai ekosistem plugin yang kaya, yang membolehkan anda menambahkan kelas atau komponen baharu yang berguna. Pihak pengurusan Tailwind menyediakan beberapa plugin yang sangat praktikal, seperti… @tailwindcss/forms(Digunakan untuk gaya borang yang lebih baik.)@tailwindcss/typography(Digunakan untuk merender kandungan yang kaya, seperti Markdown.)@tailwindcss/line-clamp(Digunakan untuk memotong teks yang terdiri daripada beberapa baris.)

melalui npm install @tailwindcss/typography Setelah memasang plugin typography, anda hanya perlu mengimportnya ke dalam fail konfigurasi dan kemudian ia boleh digunakan. prose Kelas untuk memperindah mana-mana blok kandungan HTML.

// tailwind.config.js
module.exports = {
  plugins: [
    require('@tailwindcss/typography'),
    // ... 其他插件
  ],
}
<article class="prose lg:prose-xl">
  <h1>Tajuk Artikel Blog Saya</h1>
  <p>Semua kandungan di sini akan diberikan gaya pemformatan yang menarik dan konsisten secara automatik.</p>
</article>

Teknik Berkesan dan Amalan Terbaik

Dalam projek-projek besar, untuk menggunakan Tailwind dengan cekap dan mudah diselenggara, beberapa amalan terbaik perlu diikuti.

Diperoleh daripada WEB\nDisyorkan untuk membaca. Memahami dengan mendalam konsep asas Tailwind CSS, sebuah rangka kerja CSS moden yang mengutamakan kepraktisan.

Mengekstrak komponen dan menggunakannya semula

Walaupun penggunaan kelas secara langsung dalam HTML disyorkan, apabila sesuatu corak antara muka (UI pattern) berulang kali muncul dalam projek, ia sebaiknya diekstrak dan dijadikan komponen. Dalam rangka kerja seperti React, Vue, atau Svelte, ini dilakukan dengan mencipta fail komponen yang berkaitan. Dalam projek HTML tulen pula, ini boleh dilakukan dengan menggunakan bahagian tertentu dari enjin templat (seperti partials) atau alat seperti Tailwind CSS. @apply Arahan dalam CSS mencipta abstraksi.

@apply Arahan ini membenarkan anda mengekstrak sekumpulan kelas praktikal Tailwind ke dalam sebuah kelas CSS yang dibuat khas.

hosting.com
SSL percuma, Cloudflare CDN, WAF, 40+ pusat data global untuk dipilih, latensi rendah berhampiran, 24/7/365 sokongan perkhidmatan, kini anda boleh menjimatkan kos sehingga 67%, sokongan pembinaan AI dan pengoptimuman SEO.
/* 在你的主 CSS 文件中 */
.btn-primary {
  @apply bg-blue-500 text-white font-bold py-2 px-4 rounded;
}
.btn-primary:hover {
  @apply bg-blue-700;
}

Kemudian, gunakannya dalam HTML. <button class="btn-primary">Perhatian: Penggunaan yang berlebihan boleh menyebabkan masalah. @apply Ia mungkin menyebabkan anda kembali ke kaedah lama penulisan CSS tradisional, dan kehilangan kelebihan “melihat gaya secara intuitif dalam kod markup”. Oleh itu, ia harus digunakan dengan berhati-hati, terutamanya untuk elemen-elemen yang benar-benar digunakan berulang kali di pelbagai tempat dan gayanya stabil.

Mengoptimumkan pembinaan persekitaran produksi

Pastikan fungsi PurgeCSS diaktifkan semasa pembinaan produksi (build production). Selepas Tailwind v2, fungsi ini telah disertakan secara terbina dalam sistem. tailwind.config.jspurge (Dalam pilihan tersebut). Konfigurasi yang betul. content Path ini membolehkan Tailwind mengetahui fail-fail mana yang perlu diskan untuk mencari kelas-kelas yang digunakan, dan ini merupakan kunci untuk memastikan saiz fail CSS akhir adalah yang paling kecil.

// tailwind.config.js
module.exports = {
  purge: ['./src/**/*.{html,js,jsx,ts,tsx,vue}'], // 根据你的项目结构调整
  darkMode: false, // or 'media' or 'class'
  theme: {
    extend: {},
  },
  variants: {
    extend: {},
  },
  plugins: [],
}

Selain itu, pertimbangkan untuk menggunakan alat pengekstrakan kod CSS (seperti…) cssnano) Mengurangkan saiz fail lagi.

Mengurus nama kelas dinamik

Dalam rangka kerja JavaScript, seringkali perlu menyatukan nama kelas secara dinamik berdasarkan keadaan (state). Anda boleh menggunakan alat seperti… clsxclassnames Pustaka seperti ini membuatkannya lebih jelas dari segi logik.

// 在 React 组件中
import clsx from 'clsx';

function Button({ isActive, children }) {
  const buttonClasses = clsx(
    'px-4 py-2 rounded font-medium',
    {
      'bg-blue-500 text-white': isActive,
      'bg-gray-200 text-gray-800': !isActive,
      'hover:bg-blue-600': isActive,
      'hover:bg-gray-300': !isActive,
    }
  );

return <button className={buttonClasses}>{children}</button>;
}

RINGKASAN

Tailwind CSS telah mengubah sepenuhnya cara pengembang menulis kod CSS melalui metodologinya yang berfokuskan pada kegunaan kelas praktikal. Ia memindahkan proses membuat keputusan berkaitan gaya daripada fail gaya (style sheet) ke lapisan tag (markup), membolehkan pengembang mencapai kelajuan pembangunan dan fleksibiliti reka bentuk yang belum pernah terjadi sebelumnya dengan menggabungkan kelas-kelas asas. Dengan keupayaan konfigurasi yang kuat, sistem reka bentuk responsif yang cemerlang, mekanisme pembersihan kod (Purge) yang efisien, serta ekosistem plugin yang kaya, Tailwind bukan sahaja sesuai untuk reka bentuk prototaip yang cepat, tetapi juga untuk projek-projek berskala besar yang memerlukan pengurusan yang kompleks. Memahami daripada sintaks asas hingga teknik konfigurasi dan pengoptimuman yang lebih tinggi dapat membantu pengembang membina antara muka pengguna yang moden, cekap, dan mudah diselenggara.

FAQ - Soalan Lazim

Adakah Tailwind CSS menyebabkan kod HTML menjadi sangat berat (bengkak)?

Ini adalah kebimbangan yang sering dialami. Memang, bilangan kelas pada satu elemen HTML boleh bertambah, tetapi ini biasanya dianggap sebagai harga yang perlu dibayar untuk menggunakan pendekatan “inline styling” (penyataan gaya secara langsung dalam kod HTML), yang memberikan pengalaman pembangunan yang lebih mudah (tanpa perlu berpindah-pindah antara fail) dan fleksibiliti yang tinggi. Sebenarnya, kerana fail CSS akhir hanya mengandungi kelas-kelas yang benar-benar digunakan, saiz keseluruhan projek biasanya lebih kecil berbanding dengan kod CSS yang ditulis secara manual atau menggunakan perpustakaan komponen yang besar. Alat seperti Prettier dapat membantu memastikan kod menjadi lebih teratur dan mudah dibaca. prettier-plugin-tailwindcss Nama kelas boleh disusun secara automatik untuk menjaga kod tetap kemas dan teratur.

Bagaimana untuk menutupi gaya (style) daripada pustaka ketiga pihak?

Apabila perlu menggunakan kelas dari Tailwind untuk menggantikan gaya komponen pihak ketiga, ia mungkin tidak berfungsi dengan baik jika menggunakan kelas biasa sahaja disebabkan oleh kekhususan CSS. Dalam kes ini, anda boleh menggunakan ciri-ciri khusus dari Tailwind untuk menyelesaikan masalah tersebut. !important Modifier, tambahkan selepas nama kelas. !Sebagai contoh,bg-red-500!Namun, ia harus digunakan dengan berhati-hati kerana ia boleh mempengaruhi kebolehjagaan (maintainability) gaya (style) tersebut. Cara yang lebih baik adalah dengan menambahkan nama kelas khusus (custom class names) kepada komponen tersebut jika ia boleh diubah secara langsung; atau dengan mengatur konfigurasi untuk meningkatkan kekhususan kelas yang dihasilkan oleh Tailwind.

Adakah Tailwind sesuai untuk digunakan bersama dengan pendekatan CSS-in-JS?

Secara umumnya, penggunaan kombinasi kedua-duanya tidak disyorkan. Tailwind dan CSS-in-JS (seperti Styled-components, Emotion) merupakan dua pendekatan reka bentuk gaya yang sangat berbeza. Menggabungkannya secara paksa akan menyebabkan kerumitan dan beban mental yang tidak perlu. Komuniti Tailwind lebih mengesyorkan penggunaan nama kelas secara langsung dalam rangka kerja komponen, atau menggabungkannya dengan alat lain yang sesuai. twin.macro(Untuk Emosi) Alat kompilasi seperti ini membenarkan anda menulis kelas Tailwind menggunakan sintaks CSS-in-JS, yang kemudian akan diconvert menjadi kelas CSS tulen semasa proses pembinaan (build).

Bagaimana untuk membuat garis panduan penggunaan Tailwind CSS untuk projek pasukan?

Untuk memastikan konsistensi kod, adalah disyorkan agar pasukan: 1) menyatukan cara pengembangan dan pengubahsuaian kod. tailwind.config.js Menggunakan dokumen, bukan bertindak secara spontan; 2) Menetapkan waktu untuk mengekstrak komponen, untuk mengelakkan abstraksi awal atau berlebihan. @apply Gunakan alat (seperti plugin Prettier) untuk menyatukan turutan nama kelas; 4) Untuk corak UI yang kompleks dan sering digunakan, bina pustaka komponen UI bersama (seperti menggunakan Bit atau menerbitkannya melalui npm private server), dan bukan menulis semula kombinasi kelas yang sama dalam setiap projek.