CSS Selectors Level 2
- محددات CSS المستوى الثاني: دليل شامل للمبتدئين
مقدمة
محددات CSS (Cascading Style Sheets) هي الأنماط التي تحدد عناصر HTML التي سيتم تطبيق الأنماط عليها. فهم محددات CSS أمر بالغ الأهمية لإنشاء صفحات ويب جذابة وسهلة الصيانة. محددات CSS المستوى الثاني (CSS Selectors Level 2) هي مجموعة من الأدوات القوية التي تسمح للمطورين باستهداف عناصر HTML بشكل أكثر دقة. يهدف هذا المقال إلى تقديم شرح مفصل وشامل لهذه المحددات للمبتدئين، مع التركيز على تطبيقاتها العملية.
- ما هي محددات CSS المستوى الثاني؟
محددات CSS المستوى الثاني هي إضافة إلى محددات CSS الأساسية (مثل المحددات بالعنصر، والفئة، والمعرف). توسع هذه المحددات إمكانيات التحديد، مما يسمح لك باستهداف العناصر بناءً على علاقاتها ببعضها البعض، وسماتها، وحالاتها. هذا يقلل الحاجة إلى إضافة فئات أو معرّفات إضافية إلى HTML، مما يجعل الكود الخاص بك أكثر نظافة وكفاءة.
- أنواع محددات CSS المستوى الثاني
- 1. محددات الأبناء (Child Combinators)
يستخدم الرمز `>` لتحديد العناصر التي هي أبناء مباشرون لعنصر آخر.
مثال:
```css div > p {
color: blue;
} ```
هذا الكود سيطبق اللون الأزرق على جميع فقرات (`
`) التي هي أبناء مباشرون لعناصر `
- 2. محددات الأحفاد (Descendant Combinators)
يستخدم الرمز (مسافة) لتحديد العناصر التي هي أحفاد لعنصر آخر، بغض النظر عن مستوى التداخل.
مثال:
```css div p {
color: green;
} ```
هذا الكود سيطبق اللون الأخضر على جميع الفقرات (``) التي هي أحفاد لعناصر `
- 3. محددات الأشقاء المتجاورين (Adjacent Sibling Combinators)
يستخدم الرمز `+` لتحديد العناصر التي تلي مباشرة عنصرًا آخر وتشاركه نفس العنصر الأب.
مثال:
```css h2 + p {
font-style: italic;
} ```
هذا الكود سيجعل الخط مائلاً لجميع الفقرات (``) التي تلي مباشرة عناصر `
`.
- 4. محددات الأشقاء العامين (General Sibling Combinators)
يستخدم الرمز `~` لتحديد العناصر التي تلي عنصرًا آخر وتشاركه نفس العنصر الأب، بغض النظر عن وجود عناصر أخرى بينهما.
مثال:
```css
h2 ~ p {
font-weight: bold;
}
```
هذا الكود سيجعل الخط غامقًا لجميع الفقرات (``) التي تلي عناصر `
` (في نفس العنصر الأب).
- 5. محددات السمات (Attribute Selectors)
تسمح لك هذه المحددات باستهداف العناصر بناءً على سماتها وقيمها.
- `[attribute]` : يحدد العناصر التي تحتوي على السمة المحددة.
- `[attribute=value]` : يحدد العناصر التي تحتوي على السمة المحددة بالقيمة المحددة.
- `[attribute~=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتحتوي على القيمة المحددة ككلمة منفصلة.
- `[attribute|=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتبدأ بالقيمة المحددة.
- `[attribute^=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتبدأ بالقيمة المحددة.
- `[attribute$=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتنتهي بالقيمة المحددة.
- `[attribute*=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتحتوي على القيمة المحددة في أي مكان بداخلها.
مثال:
```css
a[href] {
color: red;
}
input[type="text"] {
border: 1px solid black;
}
```
- 6. محددات الحالة الزائفة (Pseudo-classes)
تسمح لك هذه المحددات باستهداف العناصر بناءً على حالتها (مثل التمرير فوقها، تركيز عليها، إلخ).
- `:hover` : يحدد العناصر التي يتم التمرير فوقها بالماوس.
- `:active` : يحدد العناصر التي يتم النقر عليها.
- `:focus` : يحدد العناصر التي تركز عليها (مثل حقول الإدخال).
- `:visited` : يحدد الروابط التي تمت زيارتها.
- `:link` : يحدد الروابط التي لم تتم زيارتها.
- `:first-child` : يحدد العنصر الأول داخل العنصر الأب.
- `:last-child` : يحدد العنصر الأخير داخل العنصر الأب.
- `:nth-child(n)` : يحدد العنصر رقم n داخل العنصر الأب.
- `:nth-last-child(n)` : يحدد العنصر رقم n من النهاية داخل العنصر الأب.
مثال:
```css
a:hover {
text-decoration: underline;
}
input:focus {
outline: none;
}
```
- 7. محددات العنصر الزائف (Pseudo-elements)
تسمح لك هذه المحددات بإنشاء أجزاء افتراضية من عنصر HTML وتصميمها.
- `::before` : يضيف محتوى قبل محتوى العنصر.
- `::after` : يضيف محتوى بعد محتوى العنصر.
- `::first-line` : يحدد السطر الأول من النص داخل العنصر.
- `::first-letter` : يحدد الحرف الأول من النص داخل العنصر.
مثال:
```css
p::first-letter {
font-size: 200%;
}
```
- استخدامات عملية
تعتبر محددات CSS المستوى الثاني مفيدة جدًا في العديد من السيناريوهات، بما في ذلك:
- **تصميم القوائم:** تنسيق عناصر القائمة المختلفة بناءً على موقعها (الأول، الأخير، الفردي، الزوجي).
- **تنسيق الجداول:** تنسيق صفوف وأعمدة الجدول بناءً على موقعها.
- **إضافة تأثيرات تفاعلية:** تغيير مظهر العناصر عند التمرير فوقها أو النقر عليها.
- **تحسين إمكانية الوصول:** توفير إشارات مرئية واضحة للعناصر التي تركز عليها.
- **إنشاء تصميمات معقدة:** بناء تخطيطات معقدة دون الحاجة إلى إضافة فئات أو معرّفات إضافية.
- أمثلة إضافية
| المحدد | الوصف | مثال |
|---|---|---|
| `div > .highlight` | يحدد العناصر ذات الفئة "highlight" التي هي أبناء مباشرون لعناصر ``. | `div > .highlight { background-color: yellow; }` |
| `ul li:nth-child(odd)` | يحدد عناصر القائمة الفردية داخل قائمة غير مرتبة (``). | `ul li:nth-child(odd) { background-color: #f2f2f2; }` |
| `a[target="_blank"]` | يحدد الروابط التي تفتح في علامة تبويب جديدة. | `a[target="_blank"] { font-weight: bold; }` |
| `input:required` | يحدد حقول الإدخال المطلوبة. | `input:required { border-color: red; }` |
- التكامل مع استراتيجيات التداول والتحليل الفني
على الرغم من أن هذا المقال يركز على CSS، إلا أن فهم هذه التقنيات يمكن أن يكون مفيدًا في تحليل وتصور البيانات المتعلقة بتداول الخيارات الثنائية. على سبيل المثال، يمكن استخدام CSS لتلوين الرسوم البيانية بناءً على مؤشرات فنية معينة.
- **تحليل الشموع اليابانية:** يمكن استخدام CSS لتلوين الشموع الصاعدة والخافتة بناءً على قيمتها. الشموع اليابانية
- **مؤشر المتوسط المتحرك:** يمكن استخدام CSS لتحديد خطوط المتوسط المتحرك المختلفة بألوان مختلفة. المتوسط المتحرك
- **مؤشر RSI:** يمكن استخدام CSS لتحديد مناطق ذروة الشراء والبيع باستخدام ألوان مختلفة. مؤشر القوة النسبية
- **مؤشر MACD:** يمكن استخدام CSS لتحديد خطوط MACD والخط الإشاري بألوان مختلفة. مؤشر MACD
- **استراتيجية الاختراق:** يمكن استخدام CSS لتسليط الضوء على مستويات الدعم والمقاومة. استراتيجية الاختراق
- **استراتيجية التداول المتأرجح:** يمكن استخدام CSS لتحديد نقاط الدخول والخروج المحتملة. التداول المتأرجح
- **استراتيجية سكالبينج:** يمكن استخدام CSS لتسليط الضوء على فرص التداول السريعة. سكالبينج
- **تحليل حجم التداول:** يمكن استخدام CSS لتلوين الرسوم البيانية لحجم التداول بناءً على قيمته. حجم التداول
- **مستويات فيبوناتشي:** يمكن استخدام CSS لتحديد مستويات فيبوناتشي المختلفة بألوان مختلفة. مستويات فيبوناتشي
- **المتوسط الحركي الأسي (EMA):** يمكن استخدام CSS لتمييز خطوط EMA المختلفة. EMA
- **بولينجر باندز:** يمكن استخدام CSS لتحديد نطاقات بولينجر المختلفة بألوان مختلفة. بولينجر باندز
- **تحليل الموجات إليوت:** يمكن استخدام CSS لتحديد موجات إليوت المختلفة بألوان مختلفة. موجات إليوت
- **استراتيجية مارتينجال:** يمكن استخدام CSS لتسليط الضوء على أوامر المضاعفة. استراتيجية مارتينجال
- **استراتيجية المضاعفة:** يمكن استخدام CSS لتسليط الضوء على أوامر المضاعفة. استراتيجية المضاعفة
- **تحليل الأنماط السعرية:** يمكن استخدام CSS لتحديد الأنماط السعرية المختلفة بألوان مختلفة. الأنماط السعرية
- موارد إضافية
- CSS Selectors Level 2 (W3C Specification)
- MDN Web Docs - CSS Selectors
- Can I use CSS Selectors Level 2?
خلاصة
تعتبر محددات CSS المستوى الثاني أداة قوية للمطورين الذين يسعون إلى إنشاء صفحات ويب أكثر كفاءة ومرونة. من خلال فهم هذه المحددات واستخدامها بشكل صحيح، يمكنك تحسين كود CSS الخاص بك وتقليل الحاجة إلى فئات ومعرّفات HTML إضافية. تذكر أن الممارسة والتجربة هما المفتاح لإتقان هذه التقنيات.
[[Category:**الفئة:تنسيقات_شبكة_العرض**]
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10)
افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على:
✓ إشارات تداول يومية
✓ تحليلات استراتيجية حصرية
✓ تنبيهات باتجاهات السوق
✓ مواد تعليمية للمبتدئين
- 4. محددات الأشقاء العامين (General Sibling Combinators)
- 5. محددات السمات (Attribute Selectors)
- `[attribute]` : يحدد العناصر التي تحتوي على السمة المحددة.
- `[attribute=value]` : يحدد العناصر التي تحتوي على السمة المحددة بالقيمة المحددة.
- `[attribute~=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتحتوي على القيمة المحددة ككلمة منفصلة.
- `[attribute|=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتبدأ بالقيمة المحددة.
- `[attribute^=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتبدأ بالقيمة المحددة.
- `[attribute$=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتنتهي بالقيمة المحددة.
- `[attribute*=value]` : يحدد العناصر التي تحتوي على السمة المحددة وتحتوي على القيمة المحددة في أي مكان بداخلها.
- 6. محددات الحالة الزائفة (Pseudo-classes)
- `:hover` : يحدد العناصر التي يتم التمرير فوقها بالماوس.
- `:active` : يحدد العناصر التي يتم النقر عليها.
- `:focus` : يحدد العناصر التي تركز عليها (مثل حقول الإدخال).
- `:visited` : يحدد الروابط التي تمت زيارتها.
- `:link` : يحدد الروابط التي لم تتم زيارتها.
- `:first-child` : يحدد العنصر الأول داخل العنصر الأب.
- `:last-child` : يحدد العنصر الأخير داخل العنصر الأب.
- `:nth-child(n)` : يحدد العنصر رقم n داخل العنصر الأب.
- `:nth-last-child(n)` : يحدد العنصر رقم n من النهاية داخل العنصر الأب.
- 7. محددات العنصر الزائف (Pseudo-elements)
- `::before` : يضيف محتوى قبل محتوى العنصر.
- `::after` : يضيف محتوى بعد محتوى العنصر.
- `::first-line` : يحدد السطر الأول من النص داخل العنصر.
- `::first-letter` : يحدد الحرف الأول من النص داخل العنصر.
- استخدامات عملية
- **تصميم القوائم:** تنسيق عناصر القائمة المختلفة بناءً على موقعها (الأول، الأخير، الفردي، الزوجي).
- **تنسيق الجداول:** تنسيق صفوف وأعمدة الجدول بناءً على موقعها.
- **إضافة تأثيرات تفاعلية:** تغيير مظهر العناصر عند التمرير فوقها أو النقر عليها.
- **تحسين إمكانية الوصول:** توفير إشارات مرئية واضحة للعناصر التي تركز عليها.
- **إنشاء تصميمات معقدة:** بناء تخطيطات معقدة دون الحاجة إلى إضافة فئات أو معرّفات إضافية.
- أمثلة إضافية
- `). | `ul li:nth-child(odd) { background-color: #f2f2f2; }` |
| `a[target="_blank"]` | يحدد الروابط التي تفتح في علامة تبويب جديدة. | `a[target="_blank"] { font-weight: bold; }` |
| `input:required` | يحدد حقول الإدخال المطلوبة. | `input:required { border-color: red; }` |
- التكامل مع استراتيجيات التداول والتحليل الفني
- **تحليل الشموع اليابانية:** يمكن استخدام CSS لتلوين الشموع الصاعدة والخافتة بناءً على قيمتها. الشموع اليابانية
- **مؤشر المتوسط المتحرك:** يمكن استخدام CSS لتحديد خطوط المتوسط المتحرك المختلفة بألوان مختلفة. المتوسط المتحرك
- **مؤشر RSI:** يمكن استخدام CSS لتحديد مناطق ذروة الشراء والبيع باستخدام ألوان مختلفة. مؤشر القوة النسبية
- **مؤشر MACD:** يمكن استخدام CSS لتحديد خطوط MACD والخط الإشاري بألوان مختلفة. مؤشر MACD
- **استراتيجية الاختراق:** يمكن استخدام CSS لتسليط الضوء على مستويات الدعم والمقاومة. استراتيجية الاختراق
- **استراتيجية التداول المتأرجح:** يمكن استخدام CSS لتحديد نقاط الدخول والخروج المحتملة. التداول المتأرجح
- **استراتيجية سكالبينج:** يمكن استخدام CSS لتسليط الضوء على فرص التداول السريعة. سكالبينج
- **تحليل حجم التداول:** يمكن استخدام CSS لتلوين الرسوم البيانية لحجم التداول بناءً على قيمته. حجم التداول
- **مستويات فيبوناتشي:** يمكن استخدام CSS لتحديد مستويات فيبوناتشي المختلفة بألوان مختلفة. مستويات فيبوناتشي
- **المتوسط الحركي الأسي (EMA):** يمكن استخدام CSS لتمييز خطوط EMA المختلفة. EMA
- **بولينجر باندز:** يمكن استخدام CSS لتحديد نطاقات بولينجر المختلفة بألوان مختلفة. بولينجر باندز
- **تحليل الموجات إليوت:** يمكن استخدام CSS لتحديد موجات إليوت المختلفة بألوان مختلفة. موجات إليوت
- **استراتيجية مارتينجال:** يمكن استخدام CSS لتسليط الضوء على أوامر المضاعفة. استراتيجية مارتينجال
- **استراتيجية المضاعفة:** يمكن استخدام CSS لتسليط الضوء على أوامر المضاعفة. استراتيجية المضاعفة
- **تحليل الأنماط السعرية:** يمكن استخدام CSS لتحديد الأنماط السعرية المختلفة بألوان مختلفة. الأنماط السعرية
- موارد إضافية
- CSS Selectors Level 2 (W3C Specification)
- MDN Web Docs - CSS Selectors
- Can I use CSS Selectors Level 2?
ابدأ التداول الآن
سجل في IQ Option (الحد الأدنى للإيداع $10) افتح حساباً في Pocket Option (الحد الأدنى للإيداع $5)
انضم إلى مجتمعنا
اشترك في قناة Telegram الخاصة بنا @strategybin للحصول على: ✓ إشارات تداول يومية ✓ تحليلات استراتيجية حصرية ✓ تنبيهات باتجاهات السوق ✓ مواد تعليمية للمبتدئين