x

العمل مع الفئات الزائفة Pseudo-Classes والعناصر الزائفة Pseudo-Elements في CSS

ما هي الفئات الزائفة Pseudo-classes ، وكيف تعمل؟

نظري

تُعد الفئات الزائفة (Pseudo-classes) كلماتٍ مفتاحيةً خاصةً في لغة CSS، تتيح لك اختيار عنصرٍ ما بناءً على حالته (state) أو موقعه (position) المحددين. وقد تتضمن حالة العنصر أو موقعه ما يلي:

لاستخدام فئة زائفة (pseudo-class)، قم بإضافتها إلى المُحدِّد (selector) باستخدام علامة النقطتين (:) متبوعةً باسم الفئة الزائفة:


selector:pseudo-class {
 /* CSS properties */
}
        

لنستعرض كيف يمكنك استخدام فئة زائفة (pseudo-class) لتمثيل كل حالة من الحالات والمواضع التي ذكرناها سابقاً.

تتيح لك الفئة الزائفة :active تحديد الحالة النشطة (the active state) لعنصر ما، مثل النقر على زر:

index.html


<link rel="stylesheet" href="styles.css">

<button>زر تجريبي</button>
            

styles.css


button:active {
 background: greenyellow;
}
            

معاينة:


تُحدد الفئة الزائفة :hover حالة العنصر عند تمرير مؤشر الفأرة فوقه. ومن الأمثلة على ذلك تمرير المؤشر فوق زر أو رابط:

index.html


<link rel="stylesheet" href="styles.css">

<a href="#">مرِّر مؤشر الفأرة فوقي!</a>
            

styles.css


a:hover {
 text-decoration: none;
 color: white;
 background: crimson;
}
            

معاينة:


تُستخدم الفئة الزائفة :first-child لاختيار عنصر يُمثّل الابن الأول (first child) لعنصره الأب (its parent element). إليك مثال على استهداف عنصر الفقرة الأول (first paragraph element) داخل حاوية (container) من نوع div :

index.html


<link rel="stylesheet" href="styles.css">

<div class="container">
 <p>الابن الأول first child</p>
 <p>الابن الثاني second child</p>
 <p>الابن الثالث third child</p>
 <p>الابن الأخير last child</p>
</div>
            

styles.css


.container p:first-child {
 background: lightcoral;
 padding: 0.4rem;
}
            

معاينة:

سيحصل أول عنصر فقرة (first paragraph element) داخل ذلك الـ div على لون خلفية (background color) بدرجة lightcoral ، بالإضافة إلى هامش داخلي padding مقداره 0.4rem من الجهات الأربع.

تستهدف الفئة الزائفة :last-child العنصر الأخير (the last element) الذي يمثل ابناً لعنصره الأب. إليك مثالًا على استهداف آخر عنصر فقرة (last paragraph element) داخل حاوية (container) من نوع div :

index.html


<link rel="stylesheet" href="styles.css">

<div class="container">
 <p>الابن الأول first child</p>
 <p>الابن الثاني second child</p>
 <p>الابن الثالث third child</p>
 <p>الابن الأخير last child</p>
</div>
            

styles.css


.container p:last-child {
 background: lightcoral;
 padding: 0.4rem;
}
            

معاينة:


تتيح لك الفئة الزائفة :visited تنسيق رابط سبق للمستخدم زيارته:

index.html


<link rel="stylesheet" href="styles.css">

<a href="https://www.example.com" target="_blank">تفضل بزيارة Example.com</a>
            

styles.css


a:visited {
 color: purple;
}
            

معاينة:


تتيح لك الفئة الزائفة :disabled تنسيق عنصر تفاعلي في وضع التعطيل (disabled mode) :

index.html


<link rel="stylesheet" href="styles.css">

<button disabled>زر معطَّل</button>
            

styles.css


button:disabled {
 background-color: lightgray;
}
            

معاينة:


كما تلاحظ، تتيح لك الفئات الزائفة (pseudo-classes) تنسيق العناصر بناءً على تفاعلات المستخدم، مثل تمرير مؤشر الفأرة فوق عنصر ما أو زيارة رابط؛ مما يضفي طابعاً تفاعلياً أكبر على موقعك الإلكتروني.

بصرف النظر عن الفئات الزائفة (pseudo-classes) التي ذُكرت سابقاً، توجد فئات أخرى مثل:


أسئلة :

ماذا تفعل الفئة الزائفة :hover في CSS ؟

1. تختار عنصرًا عندما يتم النقر عليه. ❌

2. تختار عنصرًا عندما يتم التمرير فوقه بواسطة الماوس. ✅

3. تختار الطفل الأول لعنصر أب. ❌

4. تختار رابطًا بعد زيارته. ❌


ما هي الفئات الزائفة (pseudo-classes) ؟

1. هي كلمات مفتاحية خاصة في CSS تتيح لك اختيار عنصر بناءً على حالته أو موقعه. ✅

2. تُستخدم لإنشاء عناصر HTML جديدة. ❌

3. تغير محتوى العنصر. ❌

4. هي بدائل للصنف في HTML. ❌


ماذا تفعل الفئة الزائفة :disabled في CSS ؟

1. تنسق عنصرًا عندما يكون معطلاً. ✅

2. تنسق عنصرًا عندما يتم التمرير فوقه. ❌

3. تنسق الطفل الأول لعنصر أب. ❌

4. تنسق رابطًا بعد زيارته. ❌