Pseudo-classes

From binaryoption
Jump to navigation Jump to search
Баннер1

الصفوف الزائفة في CSS

الصفوف الزائفة (Pseudo-classes) هي كلمات مفتاحية تُضاف إلى المحددات (selectors) في CSS لتحديد العناصر بناءً على حالة معينة. هذه الحالات ليست سمات مباشرة للعنصر نفسه، بل تعتمد على أشياء مثل تفاعل المستخدم (مثل التمرير فوق العنصر)، أو موضع العنصر في هيكل المستند، أو خصائص العنصر التي لا يمكن تحديدها باستخدام المحددات العادية. تُمكّن الصفوف الزائفة المطورين من تطبيق أنماط مختلفة على العناصر بناءً على هذه الحالات، مما يوفر مرونة كبيرة في تصميم وتنسيق صفحات الويب.

ما هي الصفوف الزائفة ولماذا نستخدمها؟

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

تساعد الصفوف الزائفة في:

  • تحسين تجربة المستخدم (UX) من خلال تقديم ردود فعل بصرية للتفاعلات.
  • جعل التصميم أكثر ديناميكية وتفاعلية.
  • تقليل الحاجة إلى جافاسكربت (JavaScript) لتنفيذ بعض التغييرات البصرية البسيطة.
  • إمكانية الوصول (Accessibility) – على سبيل المثال، التأكد من أن العناصر التي تركز عليها لوحة المفاتيح (keyboard focus) واضحة بصريًا.

بناء الجملة

تُكتب الصفوف الزائفة باستخدام علامة النقطتين (:) بعد المحدد (selector).

```css selector:pseudo-class {

 property: value;

} ```

مثال:

```css a:hover {

 color: red;

} ```

في هذا المثال، سيتم تغيير لون جميع الروابط (`<a>`) إلى الأحمر عند التمرير فوقها.

أنواع الصفوف الزائفة

يمكن تقسيم الصفوف الزائفة إلى عدة فئات رئيسية:

  • صفوف زائفة للتفاعلات (Interaction Pseudo-classes): تستجيب لتفاعلات المستخدم.
  • صفوف زائفة الهيكلية (Structural Pseudo-classes): تستند إلى موضع العنصر في هيكل المستند.
  • صفوف زائفة للنماذج (Form Pseudo-classes): تتعلق بعناصر النماذج.
  • صفوف زائفة للإنكار (Negation Pseudo-classes): تحدد العناصر التي لا تتطابق مع محدد معين.
  • صفوف زائفة الأخرى (Other Pseudo-classes): تشمل مجموعة متنوعة من الصفوف الزائفة التي لا تندرج في أي من الفئات الأخرى.

صفوف زائفة للتفاعلات

  • `:hover`: يتم تطبيق النمط عندما يتم التمرير فوق العنصر. (مثال أعلاه)
  • `:active`: يتم تطبيق النمط عندما يتم النقر على العنصر (أثناء الضغط).
  • `:focus`: يتم تطبيق النمط عندما يكون العنصر في حالة التركيز (عادةً ما يكون ذلك من خلال النقر عليه أو التنقل باستخدام لوحة المفاتيح). مهم جداً لـ إمكانية الوصول.
  • `:visited`: يتم تطبيق النمط على الروابط التي قام المستخدم بزيارتها بالفعل.
  • `:link`: يتم تطبيق النمط على الروابط التي لم يتم زيارتها بعد.

مثال:

```css button:hover {

 background-color: lightblue;

}

input:focus {

 border: 2px solid blue;

} ```

صفوف زائفة الهيكلية

  • `:first-child`: يتم تطبيق النمط على العنصر الأول داخل العنصر الأب.
  • `:last-child`: يتم تطبيق النمط على العنصر الأخير داخل العنصر الأب.
  • `:nth-child(n)`: يتم تطبيق النمط على العنصر رقم `n` داخل العنصر الأب. `n` يمكن أن يكون رقمًا (مثل 1، 2، 3) أو صيغة (مثل `even` للعناصر الزوجية، `odd` للعناصر الفردية).
  • `:first-of-type`: يتم تطبيق النمط على العنصر الأول من نوع معين داخل العنصر الأب.
  • `:last-of-type`: يتم تطبيق النمط على العنصر الأخير من نوع معين داخل العنصر الأب.
  • `:nth-of-type(n)`: يتم تطبيق النمط على العنصر رقم `n` من نوع معين داخل العنصر الأب.
  • `:only-child`: يتم تطبيق النمط إذا كان العنصر هو الطفل الوحيد للعنصر الأب.
  • `:empty`: يتم تطبيق النمط على العناصر التي لا تحتوي على أي محتوى (لا يوجد نص، ولا عناصر فرعية).

مثال:

```css li:first-child {

 font-weight: bold;

}

tr:nth-child(even) {

 background-color: #f2f2f2;

} ```

صفوف زائفة للنماذج

  • `:enabled`: يتم تطبيق النمط على عناصر النموذج التي تم تمكينها.
  • `:disabled`: يتم تطبيق النمط على عناصر النموذج التي تم تعطيلها.
  • `:checked`: يتم تطبيق النمط على عناصر الإدخال (مثل مربعات الاختيار وأزرار الراديو) التي تم تحديدها.
  • `:required`: يتم تطبيق النمط على عناصر النموذج التي تم تحديدها على أنها مطلوبة.
  • `:valid`: يتم تطبيق النمط على عناصر النموذج التي تحتوي على بيانات صحيحة (وفقًا لسمة `pattern` أو نوع الإدخال).
  • `:invalid`: يتم تطبيق النمط على عناصر النموذج التي تحتوي على بيانات غير صحيحة.

مثال:

```css input:disabled {

 background-color: #ddd;
 cursor: not-allowed;

}

input:checked + label {

 font-weight: bold;

} ```

صفوف زائفة للإنكار

  • `:not(selector)`: يتم تطبيق النمط على العناصر التي *لا* تتطابق مع المحدد المحدد.

مثال:

```css a:not(:visited) {

 color: blue;

} ```

هذا المثال سيجعل لون الروابط التي لم يتم زيارتها أزرق.

صفوف زائفة أخرى

  • `:root`: يمثل العنصر الجذر للمستند (عادةً ما يكون العنصر `<html>`).
  • `:target`: يتم تطبيق النمط على العنصر الذي يطابقه عنوان URL الحالي (عادةً ما يستخدم مع الروابط الداخلية).
  • `:first-line`: يتم تطبيق النمط على السطر الأول من كتلة نصية.
  • `:first-letter`: يتم تطبيق النمط على الحرف الأول من كتلة نصية.

مثال:

```css

root {
 --main-color: #3498db;

}

p:first-letter {

 font-size: 200%;
 color: red;

} ```

الصفوف الزائفة والـ الخيارات الثنائية (Binary Options)

قد يبدو الربط بين الصفوف الزائفة والخيارات الثنائية غير واضح، لكن يمكن استخدامه في تطوير واجهات المستخدم (UI) لتطبيقات تداول الخيارات الثنائية. على سبيل المثال:

  • تغيير لون الأزرار بناءً على الحالة: يمكن استخدام `:hover` و `:active` لتوفير ردود فعل بصرية عندما يقوم المستخدم بالتمرير فوق زر "شراء" أو "بيع" أو النقر عليه.
  • تمييز الصفقات المفتوحة: يمكن استخدام `:checked` (إذا تم تمثيل الصفقات المفتوحة كعناصر نموذج) أو `:nth-child` لتنسيق الصفقات المفتوحة بشكل مختلف عن الصفقات المغلقة.
  • تظليل الخيارات التي على وشك الانتهاء: يمكن استخدام `:target` أو JavaScript مع CSS لتظليل الخيارات التي على وشك انتهاء صلاحيتها.
  • تنسيق النتائج: يمكن استخدام `:nth-child(even)` و `:nth-child(odd)` لتنسيق صفوف جدول نتائج التداول بشكل بديل لتحسين القراءة.

في سياق التحليل الفني، يمكن استخدام الصفوف الزائفة لتسليط الضوء على نقاط الدعم والمقاومة على الرسوم البيانية، أو لتلوين الشموع اليابانية (Candlesticks) بناءً على اتجاهها (صعودي أو هبوطي).

أفضل الممارسات

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

أمثلة إضافية

  • تغيير لون الخلفية لصف الجدول عند التمرير فوقه:

```css tr:hover {

 background-color: yellow;

} ```

  • تنسيق العنصر الأخير في قائمة التنقل:

```css nav li:last-child {

 border-right: none; /* إزالة الحدود اليمنى للعنصر الأخير */

} ```

  • تطبيق نمط مختلف على زر الإرسال إذا كان النموذج غير صالح:

```css button[type="submit"]:disabled {

 opacity: 0.5;
 cursor: not-allowed;

} ```

  • تسليط الضوء على الروابط التي تم زيارتها:

```css a:visited {

 color: purple;

} ```

  • إضافة رمز إلى مربعات الاختيار المحددة:

```css input[type="checkbox"]:checked + label::before {

 content: "\2713"; /* رمز علامة الاختيار */

} ```

الخلاصة

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

مصطلحات ذات صلة

```

ابدأ التداول الآن

سجّل في IQ Option (الحد الأدنى للإيداع 10 دولار) افتح حساباً في Pocket Option (الحد الأدنى للإيداع 5 دولار)

انضم إلى مجتمعنا

اشترك في قناة Telegram الخاصة بنا @strategybin لتصلك: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات اتجاهات السوق ✓ مواد تعليمية للمبتدئين

Баннер