فریمورک CSS چیست؟
فریمورکهای CSS مجموعهای از استایلهای ازپیشتعریفشده، کامپوننتها و سیستم گرید هستند که سرعت توسعهٔ رابط کاربری را بالا میبرند. بهجای نوشتن همهٔ استایلها از صفر، از کلاسها و کامپوننتهای آماده استفاده میکنی.
Tailwind CSS
Tailwind یک فریمورک utility-first است: بهجای کامپوننت آماده، کلاسهای کوچک و ترکیبپذیر میدهد. هر کلاس معمولاً یک property را تنظیم میکند؛ با ترکیب آنها ظاهر نهایی را میسازی.
- مزایا: انعطاف بالا، بدون نیاز به نامگذاری کلاس سفارشی، طراحی یکپارچه با تنظیمات، حجم خروجی با Purge کم میشود.
- معایب: HTML شلوغ میشود؛ برای تیمهایی که دوست دارند همهٔ استایل در فایل CSS باشد ممکن است خوشایند نباشد.
<button class="px-4 py-2 bg-brand-600 text-white rounded-lg hover:bg-brand-700">
دکمه
</button>
با tailwind.config.js میتوانی رنگ برند، فاصلهها و breakpointها را سفارشی کنی. در پروژههای Laravel، Vue و React بسیار استفاده میشود.
Bootstrap
Bootstrap فریمورک component-based است که توسط توییتر (اکنون با مشارکت جامعه) نگهداری میشود. گرید ۱۲ ستونه، دکمه، کارت، ناوبار، مودال، فرم و … از پیش تعریف شدهاند.
- مزایا: مستندات عالی، تمهای آماده زیاد، سازگاری مرورگرها، سریع برای پروتوتایپ و اپهای داخلی.
- معایب: ظاهر «Bootstrapی» اگر سفارشی نشود؛ حجم CSS نسبتاً زیاد؛ برای طراحی خیلی منحصربهفرد گاهی باید با استایلهای سفارشی زیاد Override کنی.
<div class="card">
<div class="card-body">محتوا</div>
</div>
نسخهٔ فعلی Bootstrap 5 است و وابستگی به jQuery را حذف کرده است.
Bulma
Bulma یک فریمورک فقط-CSS (بدون جاوااسکریپت) بر پایهٔ Flexbox است. کلاسها خوانا و سادهاند و با افزودن modifierها ظاهر را تغییر میدهی.
- مزایا: سبک، بدون JS، سینتکس ساده، مناسب برای کسانی که با Vue یا React خودشان منطق را مینویسند.
- معایب: اکوسیستم و قالب آماده کمتر از Bootstrap.
<button class="button is-primary">دکمه</button>
<div class="columns"><div class="column">ستون</div></div>
سایر گزینهها
- Foundation — فریمورک واکنشگرا با امکانات پیشرفته و قابل سفارشیسازی.
- UIKit — فریمورک سبک با ماژولهای جدا (فقط آنچه نیاز داری را وارد کن).
- Chakra UI / MUI (Material UI) — کتابخانهٔ کامپوننت برای React با استایل از پیش تعریفشده؛ بیشتر در اکوسیستم React استفاده میشوند.
کدام را انتخاب کنم؟
برای سرعت و ظاهر یکدست بدون طراحی سفارشی زیاد → Bootstrap یا Bulma. برای کنترل کامل و طراحی منحصربهفرد با سرعت توسعه بالا → Tailwind. برای پروژهٔ React با کامپوننت آماده → Chakra UI یا MUI در کنار یا بهجای فریمورک CSS عمومی.