تخطَّ إلى المحتوى الرئيسي

قواعد اللغة والـ RTL

قواعد تخطيط RTL

قواعد تخطيط RTL — التوثيق قيد الإعداد.

مكتمل

العربية تقلب الـ layout عبر `dir="rtl"` على العنصر الجذر. لا CSS خاص بـ RTL لكل صفحة — نظام التصميم يستخدم الخصائص المنطقية (`padding-inline-*`، `border-inline-start`، `inset-inline-*`) فينعكس الـ layout تلقائياً.

كيف يُطبَّق RTL

سمة الجذر
كل قالب صفحة يربط `[attr.dir]="locale() === 'ar' ? 'rtl' : 'ltr'"` على الـ wrapper الخارجي. المتصفّح يقلب اتجاه الكتل، اتجاه النصّ، والخصائص المنطقية.
خصائص CSS المنطقية
استخدم `padding-inline-start/end`، `margin-inline`، `border-inline-start/end`، `inset-inline-*`. تجنّب `left`، `right`، `padding-left`، `padding-right`، `border-left`، `border-right`.
أدوات Tailwind المنطقية
Tailwind v4 يأتي بـ `ps-*` / `pe-*` / `ms-*` / `me-*` / `start-*` / `end-*` / `border-s` / `border-e`. استخدمها بدل `pl-*` / `pr-*` / `left-*` / `right-*`.

قاعدة عكس الأيقونات

الأيقونات الاتجاهية (chevrons، الأسهم، رجوع/تقدّم) يجب أن تنعكس في RTL. أضف فئة `.icon-flip` على الـ SVG — الحارس العام يطبّق `transform: scaleX(-1)` حين `[dir="rtl"]`. الأيقونات غير الاتجاهية (بحث، تقويم، مستخدم) لا تأخذ فئة الانعكاس.

قواعد الانعكاس حسب نوع العنصر

انعكس في RTL

  • اتجاه الـ Layout (ترتيب flex و grid)
  • Chevrons + أسهم رجوع/تقدّم (.icon-flip)
  • علامات قوائم الأرقام + القوائم المرتّبة
  • اتجاه فاصل مسار التنقّل
  • الحدود الجانبية (border-inline-start / -end)

لا تنعكس

  • الشعارات وعلامات النصّ
  • الصور الفوتوغرافية والرسوم التحريرية
  • الأرقام والتواريخ (أرقام غربية 0-9)
  • أرقام الهاتف وعناوين البريد
  • كتل الكود والمعرّفات التقنية