استعلامات دعم CSS الأصلية لـ rich-text

يقيِّم مفكك XHTML الأصلي مجموعات @supports وشروط supports() في imports مقابل إعلانات rich-text وقواعد الاختيار المدعومة لديه

<body xmlns="http://www.w3.org/1999/xhtml">
  <style><![CDATA[
    @supports (font-size: calc(10pt + 5pt)) and selector(span.notice) {
      span.notice { font-size: 15pt }
    }
    @supports not (display: grid) {
      span.notice { font-weight: bold }
    }
  ]]></style>
  <p><span class="notice">Conditional text</span></p>
</body>

في الملف الأصلي تنطبق المجموعتان معًا، منتِجتين نصًا عريضًا بحجم 15 نقطة بخطوط المستدعي المقدَّمة

قبول الإعلانات والمُختارات

استعلامات الإعلانات تستخدم مساعدات القبول القائمة لـ font-size وfont-weight وfont-style وtext-decoration وcolor وtext-align وfont-family وline-height واختصار font وletter-spacing وword-spacing

الاستعلامات العددية تشارك ملف CSS الحسابي المنتهي وقياسات الخط الافتراضية وأبعاد media الصريحة؛ والخصائص غير المدعومة أو القيم غير المقبولة تقيَّم false

استعلامات font-family تتطلب مجموعة FontFamilyNames المُهيَّأة، والعائلة الصالحة غير المتاحة قد تستخدم الاحتياط القائم بالعائلات المقدَّمة

تُقبل تعليمة !important الصالحة في استعلام إعلان دون تغيير أولوية cascade المجموعة الشرطية؛ والإعلان الزائد أو الفاصلة المنقوطة اللاحقة أو الأولوية غير الصالحة تُرفض

selector() يفحص قواعد اختيار native القائمة وإعلانات namespaces للورقة الحالية دون مطابقة عنصر مستند

كل فرع مُختار يجب أن يكون مدعومًا، بما يشمل الفروع داخل قوائم is() وwhere() المتسامحة عادةً؛ وبادئات namespaces غير المعرَّفة والفئات الزائفة المجهولة تقيَّم false

:scope للجذر وقواعد :hover و:active و:focus و:focus-visible و:focus-within الساكنة مدعومة. استعلام القداءة الناجح يصف دعم المحلل؛ ومُختارات أفعال المستخدم تبقى من دون مطابقة مظهر PDF أبدًا، والصيغ الدالية مثل :hover() غير صالحة

استكشافات المُختارات تعيد تخزين المطابِق المؤقت وتبترك مطابقة أوراق الأنماط اللاحقة سليمةً؛ وعملها يستهلك مع ذلك ميزانيات nodes وcancellation المشتركة

قواعد Boolean والشروط المتوافقة مستقبلًا

الشروط تقبل not وسلاسل and أو or المتجانسة والأقواس المتداخلة؛ وخلط and مع or يتطلب تجميعًا صريحًا

التعليقات ومهرّبات معرفات CSS تتبع محلل المفكك القائم، وnot يجب أن تكون كلمة مفتاحية منفصلة عن الحد التالي لا token دالة not()

الدوال المجهولة المتوازنة والشروط general-enclosed بين أقواس تقيَّم false، فيمكن لـ not المحيطة أن توفر بديلًا

السلاسل المشوَّهة وtokens URL غير المقتبسة المشوَّهة والمحددات غير المتطابقة تبطل الشرط المحيط قبل النفي؛ والأبعاد العددية وtokens الدوال المقتبسة تحفظ حدود tokens المميزة لها

المجموعات والاستيراد والمخرجات

المجموعات الشرطية تحفظ موضع مصدرها الفعلي وتخصص المُختار وأولويات important، ويمكن أن تتداخل مع مجموعات media المدعومة

@import "metrics.css" supports(line-height: 18pt) print;
@import "fallback.css" supports(not selector(span:future));

شرط supports() الاختياري للاستيراد يلي URI المورد ويسبق شرط media الاختياري؛ وكلاهما يجب أن يقبل المورد قبل أن يُسهم بإعلانات

حل URI النسبي ومعالجة الدورات وعزل namespaces ومتطلبات ترتيب الاستيراد القائمة تبقى هي تلك الخاصة بـ أوراق الأنماط المقدَّمة من المستدعي

الإعلانات المقبولة تصل إلى runs مفكوكة فعلية وقيم rich قياسية محسوبة ومظاهر حقول محفوظة وimports rich FDF/XFDF بالملف الافتراضي عبر المفكك نفسه

الحدود والقبول

تحليل الشروط واستكشاف المُختارات يستهلكان حدود MaxNodes وMaxTotalCodeUnits القائمين؛ والشروط والكتل والمجموعات المتداخلة تشارك MaxDepth

الـ cancellation ينشر EHPDFOperationCancelled دون إعادة runs جزئية، والاستعلامات أو الميزانيات الفاشلة تحفظ الاسترداد للخيارات الجديدة والمُعاد استخدامها

Tests/Linux/RichTextSupports/Run.py يتحقق من سلوك الإعلانات والمُختارات وBoolean وtokens URL والتداخل في cascade وimports والـ cancellation المقيس ومخرجات PDF الفعلية المحفوظة plain والمشفَّرة AES

هذا الملف الأصلي لا يضيف layout متصفح أو import layers أو خصائص مخصصة أو صيغ مُختارات إضافية أو مزايا CSS شرطية تجاوز استعلامات الإعلانات والمُختارات المدعومة أعلاه

صيغة الشروط تتبع الأجزاء المدعومة من CSS Conditional Rules Level 3 وLevel 4؛ وملف القبول الأصلي هو ما يحدد أي الاستعلامات تنجح

المفكك الأصلي · خيارات الفك · ملفات media