W3Schools: CSS Positioning

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

CSS Positioning: دليل شامل للمبتدئين

مقدمة

في عالم تصميم الويب، يعتبر تحديد موضع العناصر (Positioning) من أهم الأساسيات التي تتيح لك التحكم في تخطيط صفحات الويب بشكل دقيق ومرن. يسمح لك CSS بتحديد كيفية ترتيب العناصر بالنسبة لبعضها البعض، وإلى المتصفح، وإلى المستند ككل. هذا المقال يهدف إلى تقديم شرح مفصل لمفهوم CSS Positioning للمبتدئين، مع التركيز على الأنواع المختلفة لـ positioning وكيفية استخدامها لتحقيق التخطيطات المطلوبة. سنتناول أيضاً بعض الأمثلة العملية لتوضيح المفاهيم.

أنواع الـ Positioning

يوجد أربعة أنواع رئيسية لـ CSS Positioning:

  • Static Positioning (التحديد الثابت): هذا هو الوضع الافتراضي لجميع العناصر. توضع العناصر بشكل طبيعي في تدفق المستند، ولا يمكنك التحكم في موقعها باستخدام خصائص الـ positioning.
  • Relative Positioning (التحديد النسبي): يسمح لك بتحريك العنصر بالنسبة لموقعه الطبيعي في تدفق المستند. عند استخدام `position: relative;`، يمكنك استخدام خصائص `top`، `right`، `bottom`، و `left` لتحريك العنصر. ومع ذلك، يظل العنصر يحتل المساحة التي كان سيحتلها في موقعه الأصلي.
  • Absolute Positioning (التحديد المطلق): يسمح لك بتحديد موقع العنصر بالنسبة لأقرب عنصر أب (ancestor) تم تحديده بـ `position: relative;`، `position: absolute;`، أو `position: fixed;`. إذا لم يكن هناك عنصر أب محدد، فسيتم تحديد موقع العنصر بالنسبة للعنصر `<html>`. عند استخدام `position: absolute;`، يخرج العنصر من تدفق المستند، مما يعني أنه لن يؤثر على موضع العناصر الأخرى.
  • Fixed Positioning (التحديد الثابت): يسمح لك بتحديد موقع العنصر بالنسبة لنافذة المتصفح. عند استخدام `position: fixed;`، يظل العنصر في مكانه حتى عند التمرير (scrolling). يخرج العنصر أيضاً من تدفق المستند.

شرح مفصل لكل نوع مع أمثلة

1. Static Positioning

كما ذكرنا سابقاً، هذا هو الوضع الافتراضي. لنرى مثالاً:

```css div {

 position: static;
 top: 100px; /* لن يكون لها أي تأثير */
 left: 50px;  /* لن يكون لها أي تأثير */

} ```

في هذا المثال، خصائص `top` و `left` لن يكون لها أي تأثير على موضع العنصر `div`.

2. Relative Positioning

يستخدم `position: relative;` لتحريك العنصر بالنسبة لموقعه الأصلي.

```css div {

 position: relative;
 top: 50px;
 left: 30px;

} ```

سيتحرك العنصر `div` بمقدار 50 بكسل إلى الأسفل و 30 بكسل إلى اليمين من موقعه الأصلي. ولكن المساحة التي كان سيحتلها العنصر في موقعه الأصلي ستظل فارغة. هذا يعني أن العناصر الأخرى قد تتأثر بموضع العنصر `div`.

3. Absolute Positioning

يستخدم `position: absolute;` لتحديد موقع العنصر بالنسبة لأقرب عنصر أب تم تحديده بـ `position: relative;`، `position: absolute;`، أو `position: fixed;`.

```html

   Absolute Div

```

في هذا المثال، العنصر `div` الداخلي (الذي يحتوي على النص "Absolute Div") سيتم وضعه على بعد 10 بكسل من الأعلى و 20 بكسل من اليسار بالنسبة للعنصر `div` الخارجي. لاحظ أن العنصر الداخلي يخرج من تدفق المستند.

4. Fixed Positioning

يستخدم `position: fixed;` لتحديد موقع العنصر بالنسبة لنافذة المتصفح.

```css div {

 position: fixed;
 top: 10px;
 left: 10px;
 width: 100px;
 height: 50px;
 background-color: lightblue;

} ```

سيظل العنصر `div` في أعلى الزاوية اليسرى من نافذة المتصفح، حتى عند التمرير. يخرج العنصر أيضاً من تدفق المستند.

خصائص الـ Positioning الإضافية

  • `z-index`: يحدد ترتيب العناصر المتداخلة. العنصر الذي لديه قيمة `z-index` أعلى سيظهر فوق العناصر التي لديها قيم `z-index` أقل.
  • `top`: يحدد المسافة بين الحافة العلوية للعنصر وحافة العنصر الأب (أو نافذة المتصفح في حالة `position: fixed;`).
  • `right`: يحدد المسافة بين الحافة اليمنى للعنصر وحافة العنصر الأب (أو نافذة المتصفح في حالة `position: fixed;`).
  • `bottom`: يحدد المسافة بين الحافة السفلية للعنصر وحافة العنصر الأب (أو نافذة المتصفح في حالة `position: fixed;`).
  • `left`: يحدد المسافة بين الحافة اليسرى للعنصر وحافة العنصر الأب (أو نافذة المتصفح في حالة `position: fixed;`).

استخدامات عملية لـ CSS Positioning

  • **إنشاء القوائم المنسدلة:** يمكن استخدام `position: absolute;` و `z-index` لإنشاء قوائم منسدلة تظهر فوق المحتوى الآخر.
  • **إنشاء التخطيطات المعقدة:** يمكن استخدام أنواع الـ positioning المختلفة لإنشاء تخطيطات معقدة تتطلب تحكماً دقيقاً في موضع العناصر.
  • **إنشاء الأزرار الثابتة:** يمكن استخدام `position: fixed;` لإنشاء أزرار ثابتة تظهر دائماً في نفس المكان على الشاشة، مثل زر الرجوع إلى الأعلى.
  • **تجاوز التخطيط الافتراضي:** يمكن استخدام `position: absolute;` لتجاوز التخطيط الافتراضي للعناصر ووضعها في أماكن محددة.

العلاقة بين CSS Positioning و Flexbox و Grid

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

نصائح للمبتدئين

  • ابدأ بفهم `position: static;`، فهو الوضع الافتراضي.
  • تدرب على استخدام `position: relative;` لتحريك العناصر بشكل بسيط.
  • جرب `position: absolute;` و `position: fixed;` لفهم كيفية عملهما.
  • استخدم `z-index` للتحكم في ترتيب العناصر المتداخلة.
  • لا تخف من التجربة! أفضل طريقة لتعلم CSS Positioning هي من خلال الممارسة.

الروابط الداخلية ذات الصلة

روابط خارجية متعلقة بالخيارات الثنائية (لأغراض المعلومات العامة فقط - لا تعتبر نصيحة استثمارية)

خاتمة

CSS Positioning هو أداة قوية تسمح لك بالتحكم في تخطيط صفحات الويب بشكل دقيق ومرن. من خلال فهم الأنواع المختلفة لـ positioning وكيفية استخدامها، يمكنك إنشاء تخطيطات معقدة وجذابة بصرياً. تذكر أن الممارسة هي المفتاح لإتقان CSS Positioning.

ملخص أنواع الـ Positioning
النوع الوصف تأثيره على تدفق المستند static الوضع الافتراضي. لا يمكنك التحكم في موضع العنصر. لا يؤثر relative يحرك العنصر بالنسبة لموقعه الأصلي. يحتفظ بمساحته الأصلية absolute يحدد موقع العنصر بالنسبة لأقرب عنصر أب محدد. يخرج من تدفق المستند fixed يحدد موقع العنصر بالنسبة لنافذة المتصفح. يخرج من تدفق المستند

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

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

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

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

Баннер