
- 2 min read
تحديد الأولوية في CSS — ورقة الأجوبة الخاصة بالإختبار.
الجواب: طريقة لتحديد أي قاعدة CSS يتم تطبيقها عند تطابق قواعد متعددة مع نفس العنصر
الشرح : تحديد الأولوية في CSS هو مجموعة من القواعد التي تحدد أي قاعدة سيتم تطبيقها على العنصر عند تطابق قواعد متعددة. يتم حسابها بناءً على أنواع المحددات مثل معرفات العناصر (ID) والفئات (class) والمحددات العنصرية (element selectors).
الجواب: محدد فئة واحد
الشرح : يتم حساب النتيجة على هذا الشكل (المعرف، الفئة/المحدد الزائف/السمات، العنصر/العناصر الزائفة). النتيجة 0-1-0 تعني وجود محدد فئة واحد فقط.
الجواب: .box.box
الشرح : تكرار نفس الفئة يزيد من تحديد الأولوية للمحدد.
الجواب: 1-1-0
الشرح : يتم احتساب فقط ما بداخل :not().
الجواب: :is(.cls)
الشرح : المحدد الشامل `*` و `:where()` لهم تحديد أولوية 0 دائمًا.
الجواب: false
الشرح : محددات المعرف (ID) تتفوق على أي عدد من الفئات أو العناصر.
الجواب: false
الشرح : تحديد الأولوية لـ #myId هو 1-0-0 بينما [id="myId"] هو 0-1-0.
الجواب: 1-0-0
الشرح : :is() تأخذ تحديد الأولوية لأعلى محدد داخلي، وهو #id في هذه الحالة.
الجواب: 0-2-2
الشرح : .box و :hover يُحسبان كفئتين، و div و ::before يُحسبان كعنصرين.
الجواب: true
الشرح : الأنماط المضمّنة (style="...") لا تدخل ضمن حساب تحديد الأولوية، لكنها تُقيّم أولًا في سلسلة الأولويات وتتفوق على أي أنماط أخرى ما لم يتم استخدام !important.
الجواب: 0-0-0
الشرح : :where() دائمًا تُحسب بتحديد أولوية صفر بغض النظر عما بداخلها.
الجواب: p.btn { color: blue !important; }
الشرح : !important تتفوق على تحديد الأولوية إلا إذا كانت موجودة في كلا القاعدتين، عندها يتم الاحتكام للأولوية.
الجواب: true
الشرح : .btn => 0-1-0، .btn.btn => 0-2-0. كل فئة تضاف إلى العد، وكذلك المعرفات.
الجواب: components (المُعلنة أخيرًا)
الشرح : في @layer، الطبقات التي تُعلن لاحقًا لها أولوية أعلى بغض النظر عن تحديد الأولوية. الترتيب هو: base < theme < components.
الجواب: الأحمر (من الطبقة)
الشرح : عند استخدام !important في كلا الحالتين، فإن القواعد داخل الطبقات تفوز إذا تم الإعلان عنها قبل القواعد غير الطبقية.
- 2 min read
- 3 min read
- 3 min read