موضوع أفق

حاوية إعلان الهاتف المحمول تفيض بسبب عدم تطابق تخطيط RTL/LTR

مرحباً،

أنا أستخدم سمة Horizon مع إضافة House Ads الرسمية، وقد قمت بإنشاء مكون مخصص لتنسيق الإعلانات باستخدام متغيرات CSS وقواعد التخطيط المتوافقة مع نظام تصميم Discourse.

:mobile_phone: المشكلة: تجاوز حاوية الإعلان لعرض الرؤية على الهاتف المحمول (لكل من LTR و RTL)

  • السمة: Horizon (غير قابلة للاستنساخ في السمة الافتراضية أو السمات الأخرى مثل Material، إلخ.)
  • الإضافة: House Ads + مكون مخصص
  • الجهاز: الهاتف المحمول
  • السلوك:
    • عندما تكون لغة الموقع = الإنجليزية (LTR) ← يتم قص الحافة اليسرى لـ .ad-container (تفيض إلى اليسار).
    • عندما تكون لغة الموقع = الفارسية/العربية (RTL) ← يتم قص الحافة اليمنى (تفيض إلى اليمين).
  • المتوقع: يجب أن تكون بطاقة الإعلان محتواة بالكامل داخل عرض الرؤية، ومُتوسطة أو محاذية لعرض محتوى المنشور.

كود CSS الخاص بي:

ملخص
:root {
  /* ألوان أساسية */
  --ad-bg: var(--secondary);
  --ad-border: var(--highlight);
  --ad-text: var(--primary);

  /* التسمية */
  --ad-label-bg: var(--highlight);
  --ad-label-text: var(--danger);
}


.house-creative {
  margin-left: 0 !important;
}


.house-creative a.between-posts-ad {
  display: block;
  text-decoration: none;
  color: inherit;
  background-color: transparent;
  font-family: inherit;
}

/* ===============================
   حاوية البطاقة
   =============================== */

.house-creative .ad-container {
    direction: rtl !important;
    text-align: center !important;
margin-bottom: 20px;
      padding: 10px 5px;
     max-width: calc(#{$topic-avatar-width} + #{$topic-body-width} + (#{$topic-body-width-padding} * 2));  background-color: var(--ad-bg);
  border: 2px solid var(--ad-border);
  border-radius: 10px;

  box-sizing: border-box;
  line-height: 1.7;

  color: var(--ad-text);

  transition:
    background-color 0.3s ease,
    border-color 0.3s ease,
    box-shadow 0.3s ease,
    transform 0.2s ease;
}

.house-creative a.between-posts-ad:hover .ad-container {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
}


.house-creative .ad-label {
    display: inline-block;       
    text-align: center;   
    margin-bottom: 6px;
     padding: 4px 12px;

  font-size: 0.85em;
  font-weight: 700;
  text-transform: uppercase;

  background-color: var(--ad-label-bg);
  color: var(--ad-label-text);

  border-radius: 999px;
}

.house-creative .ad-container .ad-text {
  margin: 0;

  font-size: 1rem;
  line-height: 1.9;
  color: var(--ad-text);

  direction: rtl ;
  text-align: center !important ;
  unicode-bidi: isolate;
}


@media (max-width: 480px) {
  .house-creative .ad-container {
direction: rtl !important;
text-align: center !important; 
padding: 16px 12px; 
width: 100%;
max-width: 100%;

  }
}