"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > كيف يمكننا تجميع العناصر المتفرعة في CSS؟

كيف يمكننا تجميع العناصر المتفرعة في CSS؟

تم النشر بتاريخ 2024-11-08
تصفح:299

How Can We Group Descendant Elements in CSS?

محدد CSS بعيد المنال لتجميع السليل

بينما يوفر CSS خيارات قوية لعناصر التصميم، إلا أن أحد الغياب الملحوظ هو القدرة على تجميع السلائل بسهولة . يصبح هذا القيد واضحًا عند تصميم العناصر المعقدة مثل جداول HTML، حيث يتطلب تعيين نفس النمط لكل من عناوين الأعمدة والخلايا محددات مرهقة.

معضلة التصميم المنحدر

خذ بعين الاعتبار مثال الجدول التالي:


  ...
  

لتحديد نمط كل من العناوين والخلايا باستخدام محدد واحد، عادةً ما يستخدم المرء:

#myTable th, #myTable td {}

ومع ذلك، فإن هذا النهج مطول وممل عند التعامل مع عدد كبير من العناصر.

المحدد (th، td): فرصة ضائعة

أداة أكثر بديهية سيكون بناء الجملة هو استخدام محدد تجميع مشابه لـ:

#myTable (th, td) {}

لسوء الحظ، مثل هذا البناء غير موجود في CSS.

عدم جدوى مقترحات ما قبل عام 2008

كما اتضح، فإن عدم وجود محدد التجميع السليل كان مشكلة طويلة الأمد. المحاولات المبكرة لتقديم واحدة، مثل :any() الفئة الزائفة المقترحة في عام 2008، لم تكتسب زخمًا. ومع ذلك، فإن مسودة عمل المستوى الرابع للمحددات تعيد تقديم مفهوم فئة زائفة للتجميع، :matches(). في حين أن هذا الاقتراح يبدو واعدًا، إلا أن دعم المتصفح لا يزال بعيدًا.

الحلول البديلة

في هذه الأثناء، هناك بعض الحلول للتجميع التابع:

استخدام المحدد *:

#myTable tr > * {}
  • (لاحظ أن هذا يفترض أن عناصر tr تحتوي فقط على عناصر td أو th و ليست عناصر أخرى)

    #myTable tr > * {}

    الاستنتاج
  • عدم وجود لقد كان محدد التجميع السليل في CSS مشكلة مستمرة لسنوات عديدة. وفي حين تقدم المقترحات الأخيرة بصيصًا من الأمل، إلا أن دعم المتصفحات على نطاق واسع لا يزال بعيد المنال. وحتى ذلك الحين، يجب على المطورين الاعتماد على أساليب بديلة أو الاستسلام للإسهاب في محدد td الحالي.
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3