قاعدة @supports في CSS

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

CSS @supports القاعدة تستخدم لاختبار ما إذا كان المتصفح يدعم ميزة CSS معينة،وإذا لم يدعم،يحدد نمط احتياطي.

مثال

إذا كان المتصفح يدعم display: grid،تطبيق @supports النمط CSS في الداخل.إذا لم يدعم،تطبيق @supports نمط فئة .container خارج القاعدة:

/* إذا لم يدعم المتصفح display: grid،استخدم هذا CSS */
.container {
  display: table;
  width: 90%;
  background-color: #2196F3;
  padding: 10px;
}
/* إذا يدعم المتصفح display: grid،استخدم هذا CSS */
@supports (display: grid) {
  .container {
    display: grid;
    grid: auto;
    grid-gap: 10px;
    background-color: #2196F3;
    padding: 10px;
  }
}

تجربة شخصية

نصب CSS

@supports (supports-condition) {
  /* إذا كانت الشروط صحيحة،تطبيق هذا CSS */
}

قيمة الخاصية

القيمة الوصف
supports-condition

تعريف الشروط باستخدام صيغة name-value أو بناء الجملة function().

الشروط يمكن دمجها باستخدام and أو or أو not.

selector()

هي بناء الجملة function().تحقق مما إذا كان المتصفح يدعم صيغة المبدأ المحددة.

على سبيل المثال،@supports selector(h2 > p) إذا كان المتصفح يدعم مركب النوع الفرعي،فسيتم إرجاع true وتطبيق النمط CSS.

font-tech()

هي بناء الجملة function().تحقق مما إذا كان المتصفح يدعم التكنولوجيا الخط المحددة.

على سبيل المثال،@supports font-tech(color-svg) إذا كان المتصفح يدعم جداول SVG متعددة الألوان،فسيتم إرجاع true وتطبيق النمط CSS.

font-format()

هي بناء الجملة function().تحقق مما إذا كان المتصفح يدعم صيغة الخط المحددة.

على سبيل المثال،@supports font-format(woff) إذا كان المتصفح يدعم WOFF 1.0،فسيتم إرجاع true وتطبيق النمط CSS.

دعم المتصفح

الرقم في الجدول يوضح إصدار المتصفح الأول الذي يدعم هذه القاعدة @.

@ قاعدة Chrome Edge Firefox Safari Opera
@supports 28 12 22 9 12.1
font-format() 108 108 106 17 94
font-tech() 108 108 106 17 94
selector() 83 83 69 14.1 69