الدورة / المراجعة الشاملة
الكل
Layout
Spacing
Typography
Colors
Effects
Animation

Display & Position

التحكم في طريقة عرض وموضع العناصر

12 class
block
display: block
بيخلي العنصر يأخد سطر كامل
inline-block
display: inline-block
زي inline لكن بيقبل width و height
flex
display: flex
تفعيل Flexbox على العنصر
grid
display: grid
تفعيل CSS Grid
hidden
display: none
إخفاء العنصر كلياً
relative
position: relative
مرجع للـ absolute children
absolute
position: absolute
مرتبط بأقرب relative parent
fixed
position: fixed
ثابت مع السكرول — للـ navbars
sticky
position: sticky
يتثبت لما يوصل لحد معين
inset-0
top:0; right:0; bottom:0; left:0
يملا الـ parent كله (مع absolute)
z-10 / z-50
z-index: 10 / 50
ترتيب العناصر فوق بعض
overflow-hidden
overflow: hidden
يقطع المحتوى اللي بيطلع

Flexbox

المحاذاة والتوزيع الأفقي والعمودي

16 class
ClassCSSالاستخدام
flex-rowflex-direction: rowالاتجاه الافتراضي — أفقي
flex-colflex-direction: columnعمودي — الأكثر استخداماً في الموبايل
flex-wrapflex-wrap: wrapالعناصر تنزل لسطر جديد لو ضاقت المساحة
justify-start/center/endjustify-content: …المحاذاة الأفقية للعناصر
justify-betweenjustify-content: space-betweenمسافات بين العناصر — الأكثر استخداماً في الـ navbars
items-start/center/endalign-items: …المحاذاة العمودية
items-stretchalign-items: stretchكل العناصر تبقى نفس الارتفاع
gap-4gap: 1remمسافة بين العناصر بدون margin
gap-x-4 / gap-y-4column-gap / row-gapمسافة أفقية أو عمودية فقط
flex-1flex: 1 1 0%يأخد كل المساحة المتاحة
flex-noneflex: noneحجم ثابت — ما يتأثرش بالـ flex
flex-shrink-0flex-shrink: 0ما يصغرش لو ضاق المكان — مهم للـ icons
self-centeralign-self: centerمحاذاة عنصر واحد بشكل مستقل
order-firstorder: -9999يتعرض أول عنصر بغض النظر عن مكانه في HTML
grow / shrinkflex-grow:1 / flex-shrink:1التحكم في التمدد والتقلص

CSS Grid

شبكات متعددة الأعمدة بسهولة

10 class
ClassCSSالشرح
grid-cols-1 → 12grid-template-columns: repeat(N, 1fr)عدد الأعمدة
grid-cols-nonegrid-template-columns: noneإلغاء الـ grid columns
col-span-2grid-column: span 2 / span 2عنصر يأخد عمودين
col-start-1grid-column-start: 1يبدأ من عمود محدد
col-end-3grid-column-end: 3ينتهي عند عمود محدد
row-span-2grid-row: span 2 / span 2عنصر يأخد صفين
grid-rows-3grid-template-rows: repeat(3, 1fr)عدد الصفوف
auto-cols-frgrid-auto-columns: minmax(0, 1fr)أعمدة تلقائية متساوية
place-items-centerplace-items: centerتوسيط كامل أفقي وعمودي
place-content-betweenplace-content: space-betweenتوزيع المحتوى

Spacing — الـ Scale

كل رقم × 4 = عدد الـ pixels

مرجع كامل
Class (مثال p-)rempx
p-000px
p-px1px1px
p-0.50.125rem2px
p-10.25rem4px
p-20.5rem8px
p-30.75rem12px
p-41rem16px ⭐ (الأكثر استخداماً)
p-51.25rem20px
p-61.5rem24px ⭐
p-82rem32px ⭐
p-102.5rem40px
p-123rem48px
p-164rem64px
p-205rem80px
p-246rem96px
p-328rem128px
p-4010rem160px
p-4812rem192px
p-6416rem256px
p-9624rem384px
الـ shortcuts: px- = left+right، py- = top+bottom، pt-/pb-/pr-/pl- = جهة واحدة. mx-auto = توسيط أفقي (الأشهر)، space-x-4 = مسافة أفقية بين الـ children مباشرة.

Width & Height

أبعاد العناصر

Classقيمةاستخدام شائع
w-full100%يأخد عرض الـ parent كامل
w-screen100vwعرض الشاشة كلها
w-autoautoعرض أوتوماتيك حسب المحتوى
w-1/2 / w-1/3 / w-2/350% / 33.3% / 66.7%نسب مئوية (fractions)
w-fitfit-contentعرض يساوي المحتوى بالضبط
max-w-sm/md/lg/xl/2xl384/448/512/576/672pxتحديد أقصى عرض
max-w-screen-xl1280pxأقصى عرض لصفحات كاملة
max-w-[700px]700px (arbitrary)أي قيمة مخصصة
h-screen100vhارتفاع الشاشة — في الـ hero sections
min-h-screenmin-height: 100vhالصفحة ما تبقاش أقل من الشاشة
h-full100%ارتفاع الـ parent
aspect-squareaspect-ratio: 1/1مربع تلقائي
aspect-videoaspect-ratio: 16/9نسبة الفيديو

Typography

النصوص والخطوط

مرجع شامل
text-xs → text-9xl
font-size: 0.75rem → 8rem
12 حجم جاهز — xs,sm,base,lg,xl,2xl,3xl,4xl,5xl,6xl,7xl,8xl,9xl
font-thin → font-black
font-weight: 100 → 900
thin(100) / light(300) / normal(400) / medium(500) / semibold(600) / bold(700) / black(900)
leading-none → leading-loose
line-height
التباعد بين الأسطر — relaxed أو loose للنصوص الطويلة
tracking-tight → tracking-widest
letter-spacing
المسافة بين الحروف — wider للـ labels والـ badges
text-left/center/right
text-align
محاذاة النص
uppercase / lowercase
text-transform
تحويل الحروف — uppercase مع tracking-widest يعطي look احترافي
truncate
overflow:hidden; white-space:nowrap; text-overflow:ellipsis
قطع النص الطويل مع إضافة ...
bg-clip-text text-transparent
background-clip: text + transparent color
Gradient على النص نفسه — تقنية الـ Hero titles
underline decoration-2
text-decoration + decoration-thickness
تسطير مع تحكم في السُمك واللون
line-clamp-3
-webkit-line-clamp: 3
قطع النص بعد 3 أسطر — للـ cards

Color Palette

الألوان الجاهزة في Tailwind

BLUE
CYAN
PURPLE
EMERALD
ROSE
SLATE (للـ Dark UI)

Gradients

التدرجات اللونية

ClassCSS
bg-gradient-to-rbackground-image: linear-gradient(to right, …)
bg-gradient-to-llinear-gradient(to left, …)
bg-gradient-to-tlinear-gradient(to top, …)
bg-gradient-to-blinear-gradient(to bottom, …)
bg-gradient-to-brlinear-gradient(to bottom right, …)
from-blue-500--tw-gradient-from: #3b82f6
via-purple-500--tw-gradient-via: #a855f7
to-pink-500--tw-gradient-to: #ec4899
from-transparentمن شفاف — لعمل fade
مثال على Gradients
to-r: blue → purple
to-br: cyan → indigo → pink
to-b: yellow → transparent

Borders & Rounded

الحدود والزوايا

border
border-width: 1px
حد 1px من كل الجهات
border-2 / border-4
border-width: 2px / 4px
زيادة سمك الحد
border-t / border-b
border-top / border-bottom
حد من جهة واحدة فقط
border-blue-500
border-color: #3b82f6
لون الحد
border-dashed
border-style: dashed
حد منقط — للـ dropzones
divide-y / divide-x
border بين الـ children تلقائياً
بدل ما تضيف border-b على كل child
rounded-sm → rounded-full
border-radius: 2px → 9999px
sm/md/lg/xl/2xl/3xl/full
rounded-tl-xl
border-top-left-radius: 0.75rem
تدوير زاوية واحدة فقط
ring-2 ring-blue-500
box-shadow: 0 0 0 2px #3b82f6
حد خارج العنصر بـ box-shadow — للـ focus states
ring-offset-2
مسافة بين العنصر والـ ring
بيعمل مساحة بيضاء بين العنصر والـ ring

Shadows & Blur

الظلال والضبابية

ClassCSS (مبسط)استخدام
shadow-sm0 1px 2px rgba(0,0,0,.05)ظل خفيف للعناصر الصغيرة
shadow0 1px 3px rgba(0,0,0,.1)ظل افتراضي
shadow-md0 4px 6px rgba(0,0,0,.1)للـ cards
shadow-lg0 10px 15px rgba(0,0,0,.1)للـ dropdowns والـ modals
shadow-xl0 20px 25px rgba(0,0,0,.1)بطاقات بارزة
shadow-2xl0 25px 50px rgba(0,0,0,.25)Overlays ضخمة
shadow-innerinset 0 2px 4px rgba(0,0,0,.05)ظل داخلي للـ inputs
shadow-nonebox-shadow: noneإلغاء الظل
shadow-blue-500/30ظل ملون بـ opacity 30%Glow effect — Tailwind v3
blur-sm / blur / blur-mdfilter: blur(4px/8px/12px)تشويش العنصر نفسه
backdrop-blur-mdbackdrop-filter: blur(12px)تشويش ما وراء العنصر — Glassmorphism
backdrop-blur-xlbackdrop-filter: blur(24px)Glass effect قوي

Transforms & 3D

التحريك والتدوير والتحجيم

ClassCSSمتى تستخدمه
scale-95 / scale-105transform: scale(0.95/1.05)تصغير/تكبير — مهم في active:scale-95
-translate-y-2transform: translateY(-0.5rem)رفع العنصر لأعلى — hover effects
translate-x-4transform: translateX(1rem)تحريك أفقي
rotate-45transform: rotate(45deg)تدوير — للـ icons والـ arrows
-rotate-3transform: rotate(-3deg)ميل خفيف للـ cards
skew-x-6transform: skewX(6deg)إمالة أفقية
origin-centertransform-origin: centerنقطة الدوران
origin-top-lefttransform-origin: top leftللـ tooltips والـ dropdowns
opacity-0 → opacity-100opacity: 0 → 1الشفافية — مهم في الـ animations
mix-blend-multiplymix-blend-mode: multiplyمزج ألوان الصور
grayscalefilter: grayscale(100%)تحويل الصورة لرمادي
الـ 3D Transforms في Tailwind بتحتاج CSS عادي مع style="" أو tailwind.config: transform-style:preserve-3d، perspective:1000px، backface-visibility:hidden. راجع الدرس 12 في الـ lessons للشرح الكامل.

Transitions

التغيير السلس

ClassCSS
transitiontransition-property: color,background,border,…; duration:150ms
transition-alltransition-property: all
transition-colorstransition-property: color,background-color,border-color,…
transition-transformtransition-property: transform
transition-opacitytransition-property: opacity
duration-75transition-duration: 75ms
duration-150transition-duration: 150ms (الافتراضي)
duration-300transition-duration: 300ms ⭐ الأشهر
duration-500transition-duration: 500ms
duration-700transition-duration: 700ms
ease-lineartransition-timing-function: linear
ease-incubic-bezier(0.4, 0, 1, 1)
ease-outcubic-bezier(0, 0, 0.2, 1) ⭐ الأجمل
ease-in-outcubic-bezier(0.4, 0, 0.2, 1) ⭐
delay-75 / delay-150 / delay-300transition-delay

Animations الجاهزة

تأثيرات متحركة بـ class واحدة

شوف التأثيرات
animate-spin
animate-ping
animate-pulse
animate-bounce

Responsive Breakpoints

Mobile-First — الأصغر أولاً

PrefixMin Widthالجهاز المستهدفمثال
(بدون prefix)0pxكل الأجهزة (موبايل first)text-sm
sm:640pxموبايل كبير / landscapesm:text-base
md:768pxتابلتmd:grid-cols-2
lg:1024pxلابتوب صغيرlg:grid-cols-3
xl:1280pxديسكتوبxl:grid-cols-4
2xl:1536pxشاشات كبيرة2xl:text-7xl
max-md:أقل من 768pxموبايل فقط (عكسي)max-md:hidden

State Variants

تطبيق الـ styles على حالات مختلفة

Variantمتى بيشتغلمثال
hover:لما الماوس يكون فوق العنصرhover:bg-blue-600
focus:لما العنصر يتحدد (click/tab)focus:ring-2
active:لما يتضغطactive:scale-95
disabled:لما يكون disableddisabled:opacity-50
group-hover:hover على الـ parent (group)group-hover:text-white
peer-focus:focus على عنصر "أخ" (peer)peer-focus:text-blue-500
dark:في الـ dark modedark:bg-gray-900
first: / last:أول/آخر childfirst:border-t-0
odd: / even:الصفوف الفردية/الزوجيةeven:bg-gray-50
placeholder:نص الـ placeholder في الـ inputsplaceholder:text-gray-400
before: / after:pseudo-elementsbefore:content-['✓']
aria-checked:ARIA states — للـ accessibilityaria-checked:bg-blue-500