آموزش موقعیت‌بندی المان‌ها با استفاده از position در CSS: نحوه استفاده از absolute، relative و fixed

دسته : آموزش رایگان CSS

آموزش موقعیت‌بندی المان‌ها با استفاده از position در CSS: نحوه استفاده از absolute، relative و fixed

آموزش موقعیت‌بندی المان‌ها با استفاده از position در CSS: نحوه استفاده از absolute، relative و fixed

موقعیت‌بندی (Positioning) در CSS یکی از ویژگی‌های کلیدی است که به شما این امکان را می‌دهد که کنترل کاملی بر مکان و موقعیت عناصر داشته باشید. با استفاده از ویژگی position، می‌توانید عناصر را به روش‌های مختلفی در صفحه قرار دهید و طرح‌های پیچیده و کاربرپسند ایجاد کنید. در این مقاله، به معرفی انواع موقعیت‌بندی در CSS، از جمله relative، absolute و fixed می‌پردازیم و نحوه استفاده از آن‌ها را به صورت گام‌به‌گام آموزش می‌دهیم.

 

مقدمه‌ای بر ویژگی position در CSS

ویژگی position به شما اجازه می‌دهد موقعیت عناصر را با استفاده از مقادیر مختلف تعیین کنید. این مقادیر عبارتند از:

  • static: مقدار پیش‌فرض برای همه عناصر است و به معنی موقعیت استاندارد عنصر در سند HTML است.

  • relative: موقعیت عنصر را نسبت به موقعیت اصلی آن تنظیم می‌کند.

  • absolute: موقعیت عنصر را نسبت به نزدیک‌ترین والد دارای موقعیت تنظیم می‌کند.

  • fixed: عنصر را نسبت به پنجره مرورگر موقعیت‌دهی می‌کند و با اسکرول کردن صفحه ثابت می‌ماند.

  • sticky: عنصر در ابتدا مانند relative رفتار می‌کند، اما پس از رسیدن به موقعیتی خاص در هنگام اسکرول، رفتار آن به fixed تبدیل می‌شود.

 

موقعیت‌دهی نسبی (relative)

وقتی از مقدار relative برای position استفاده می‌کنیم، عنصر همچنان در موقعیت اصلی خود در صفحه باقی می‌ماند، اما می‌توانیم آن را با استفاده از ویژگی‌های top، right، bottom و left نسبت به موقعیت اولیه‌اش جابجا کنیم.

مثال استفاده از position: relative



< div class="box" > متن < / div >

 



.box {
  position: relative;
  top: 20px;
  left: 10px;
  background-color: lightblue;
  padding: 20px;
}

 

در این مثال:

  • position: relative عنصر را در موقعیت اصلی خود نگه می‌دارد.

  • top: 20px و left: 10px عنصر را به میزان 20 پیکسل از بالا و 10 پیکسل از سمت چپ جابجا می‌کنند.

نکته: با relative، فضای اولیه عنصر در صفحه همچنان حفظ می‌شود، بنابراین تاثیری بر عناصر دیگر نخواهد داشت.

 

موقعیت‌دهی مطلق (absolute)

مقدار absolute برای position باعث می‌شود عنصر نسبت به نزدیک‌ترین والد دارای موقعیت، موقعیت‌دهی شود. اگر والد مستقیمی با موقعیت relative یا absolute وجود نداشته باشد، عنصر نسبت به کل صفحه موقعیت‌دهی می‌شود.

مثال استفاده از position: absolute



< div class="container" >
  < div class="box" > متن < / div >
< / div >

 



.container {
  position: relative;
  width: 300px;
  height: 200px;
  background-color: lightgray;
}

.box {
  position: absolute;
  top: 10px;
  right: 20px;
  background-color: lightcoral;
  padding: 20px;
}

 

در اینجا:

  • container دارای position: relative است.

  • box با position: absolute نسبت به container موقعیت‌دهی می‌شود.

  • top: 10px و right: 20px عنصر را از بالای container به مقدار 10 پیکسل و از سمت راست 20 پیکسل فاصله می‌دهند.

نکته: عناصر با موقعیت absolute فضای اولیه خود را در سند از دست می‌دهند و روی سایر عناصر قرار می‌گیرند.

 

موقعیت‌دهی ثابت (fixed)

با استفاده از fixed، عنصر نسبت به کل پنجره مرورگر موقعیت‌دهی می‌شود. این بدان معناست که عنصر با اسکرول کردن صفحه در همان موقعیت ثابت می‌ماند و حرکت نمی‌کند.

مثال استفاده از position: fixed

 



< div class="fixed-box" > من یک باکس ثابت هستم < / div >

 



.fixed-box {
  position: fixed;
  bottom: 0;
  right: 0;
  background-color: orange;
  padding: 15px;
  color: white;
}

 

در اینجا:

  • position: fixed باعث می‌شود که عنصر همواره در انتهای سمت راست و پایین صفحه ثابت بماند، حتی زمانی که کاربر صفحه را اسکرول می‌کند.

موارد استفاده از fixed شامل ساختن نوار ابزار ثابت یا دکمه‌های تماس سریع در پایین صفحه است.

 

موقعیت‌دهی چسبنده (sticky)

مقدار sticky به عنصر اجازه می‌دهد تا به طور معمول موقعیت‌دهی شود تا زمانی که کاربر به موقعیت خاصی در اسکرول برسد، سپس رفتار آن به حالت fixed تغییر می‌کند و در همان مکان ثابت می‌ماند.

 

مثال استفاده از position: sticky



< div class="sticky-box" > من یک باکس چسبنده هستم < / div >
< div style="height: 1000px;" > محتوای اسکرول < / div >

 



.sticky-box {
  position: sticky;
  top: 0;
  background-color: teal;
  padding: 10px;
  color: white;
}

 

در اینجا:

  • position: sticky با مقدار top: 0 باعث می‌شود که عنصر در هنگام اسکرول، در بالای صفحه ثابت بماند.

  • این ویژگی معمولاً برای ناوبارهای چسبنده کاربرد دارد.

 

مقایسه و کاربرد هر نوع موقعیت‌دهی

کاربرد

توضیح

مقدار Position

برای موقعیت‌دهی‌های عادی استفاده می‌شود.

موقعیت‌دهی پیش‌فرض؛ عنصر در جایگاه عادی خود قرار دارد و از ویژگی‌های top، left و غیره پشتیبانی نمی‌کند.

static

برای جابجایی‌های کوچک و ایجاد والد برای عناصر absolute مناسب است.

عنصر در جایگاه عادی خود قرار دارد و می‌توان آن را نسبت به موقعیت اولیه خود جابجا کرد.

relative

برای موقعیت‌دهی دقیق‌تر و قرار دادن عناصر روی یکدیگر.

عنصر نسبت به نزدیک‌ترین والد دارای موقعیت، موقعیت‌دهی می‌شود و از جایگاه اصلی خود جدا می‌شود.

absolute

مناسب برای نوار ابزار، فوتر ثابت یا دکمه‌های سریع.

عنصر نسبت به پنجره مرورگر موقعیت‌دهی می‌شود و با اسکرول ثابت می‌ماند.

fixed

برای ناوبار چسبنده و اجزای چسبنده در صفحات طولانی.

تا زمانی که به موقعیت خاصی در اسکرول نرسیده، مانند relative عمل می‌کند و سپس به fixed تغییر می‌کند.

sticky

 

نکات پایانی و بهترین شیوه‌ها

  • انتخاب نوع مناسب: بسته به نیاز خود از relative، absolute، fixed یا sticky استفاده کنید. به طور مثال، برای قرار دادن عناصر روی هم، از absolute و برای نوار ابزار ثابت از fixed استفاده کنید.

  • استفاده از Z-index: برای کنترل ترتیب نمایش عناصر، از ویژگی z-index استفاده کنید. عناصری که position دارند می‌توانند با مقادیر z-index مشخصی بالاتر یا پایین‌تر از سایر عناصر نمایش داده شوند.

    
    
    .box1 {
      position: absolute;
      z-index: 1;
    }
    .box2 {
      position: absolute;
      z-index: 2;
    }
    
    
  • آزمایش و تنظیم دقیق: موقعیت‌دهی‌ها ممکن است در صفحه‌های مختلف به طور متفاوتی نمایش داده شوند، بنابراین حتماً در اندازه‌های مختلف صفحه آزمایش کنید.

 

نتیجه‌گیری

ویژگی position در CSS ابزاری بسیار مهم برای موقعیت‌دهی و کنترل دقیق عناصر در صفحه وب است. با استفاده از انواع موقعیت‌دهی مانند relative، absolute، fixed و sticky می‌توانید طرح‌های پویا و جذابی ایجاد کنید. با تسلط بر این مفاهیم و تمرین، می‌توانید کنترل کاملی بر چیدمان عناصر وب‌سایت خود داشته باشید و تجربه کاربری بهتری ایجاد کنید.

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

آموزش ایجاد یک پروژه ساده React: شروع کار و ساختاردهی کامپوننت‌ها

آموزش ایجاد یک پروژه ساده React: شروع کار و ساختاردهی کامپوننت‌ها

28م شهریور 1402

مطالعه بیشتر

آموزش ساخت ماشین حساب با جاوا اسکریپت: راهنمای کامل با مثال‌های کاربردی

آموزش ساخت ماشین حساب با جاوا اسکریپت: راهنمای کامل با مثال‌های کاربردی

4م آبان 1403

مطالعه بیشتر

آموزش استفاده از ماژول‌ها (Modules) در جاوا اسکریپت: آشنایی با ES6 Modules - راهنمای کامل

آموزش استفاده از ماژول‌ها (Modules) در جاوا اسکریپت: آشنایی با ES6 Modules - راهنمای کامل

5م آبان 1403

مطالعه بیشتر

آموزش جامع توابع در جاوا اسکریپت: نحوه تعریف، فراخوانی و بازگشت مقادیر

آموزش جامع توابع در جاوا اسکریپت: نحوه تعریف، فراخوانی و بازگشت مقادیر

2م بهمن 1402

مطالعه بیشتر

تفاوت Callbacks و Promises در جاوا اسکریپت: مقایسه جامع با مثال‌ها

تفاوت Callbacks و Promises در جاوا اسکریپت: مقایسه جامع با مثال‌ها

30م مهر 1403

مطالعه بیشتر

استفاده از overflow در CSS برای مدیریت محتوای اضافی: راهنمای کامل و کاربردی

استفاده از overflow در CSS برای مدیریت محتوای اضافی: راهنمای کامل و کاربردی

11م آبان 1403

مطالعه بیشتر

کار با تصاویر SVG در CSS: کنترل استایل و استفاده از گرافیک‌های مقیاس‌پذیر

کار با تصاویر SVG در CSS: کنترل استایل و استفاده از گرافیک‌های مقیاس‌پذیر

16م آبان 1403

مطالعه بیشتر

آشنایی با Inheritance در CSS: اصول وراثت و مدیریت استایل‌ها

آشنایی با Inheritance در CSS: اصول وراثت و مدیریت استایل‌ها

12م آبان 1403

مطالعه بیشتر

آموزش ساخت یک گالری تصویر با استفاده از جاوا اسکریپت: راهنمای گام به گام

آموزش ساخت یک گالری تصویر با استفاده از جاوا اسکریپت: راهنمای گام به گام

3م آبان 1403

مطالعه بیشتر

مدیریت خطاها در Async/Await و Promises در جاوا اسکریپت: راهنمای کامل با مثال‌های عملی

مدیریت خطاها در Async/Await و Promises در جاوا اسکریپت: راهنمای کامل با مثال‌های عملی

30م مهر 1403

مطالعه بیشتر

مفهوم متغیرها و انواع داده در جاوا اسکریپت: راهنمای جامع برای مبتدیان

مفهوم متغیرها و انواع داده در جاوا اسکریپت: راهنمای جامع برای مبتدیان

28م شهریور 1402

مطالعه بیشتر

آموزش استایل‌دهی لیست‌ها در CSS: طراحی و استایل‌دهی ul و ol

آموزش استایل‌دهی لیست‌ها در CSS: طراحی و استایل‌دهی ul و ol

10م آبان 1403

مطالعه بیشتر

تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد