دسته : آموزش رایگان CSS
موقعیتبندی (Positioning) در CSS یکی از ویژگیهای کلیدی است که به شما این امکان را میدهد که کنترل کاملی بر مکان و موقعیت عناصر داشته باشید. با استفاده از ویژگی position، میتوانید عناصر را به روشهای مختلفی در صفحه قرار دهید و طرحهای پیچیده و کاربرپسند ایجاد کنید. در این مقاله، به معرفی انواع موقعیتبندی در CSS، از جمله relative، absolute و fixed میپردازیم و نحوه استفاده از آنها را به صورت گامبهگام آموزش میدهیم.
ویژگی position به شما اجازه میدهد موقعیت عناصر را با استفاده از مقادیر مختلف تعیین کنید. این مقادیر عبارتند از:
static: مقدار پیشفرض برای همه عناصر است و به معنی موقعیت استاندارد عنصر در سند HTML است.
relative: موقعیت عنصر را نسبت به موقعیت اصلی آن تنظیم میکند.
absolute: موقعیت عنصر را نسبت به نزدیکترین والد دارای موقعیت تنظیم میکند.
fixed: عنصر را نسبت به پنجره مرورگر موقعیتدهی میکند و با اسکرول کردن صفحه ثابت میماند.
sticky: عنصر در ابتدا مانند relative رفتار میکند، اما پس از رسیدن به موقعیتی خاص در هنگام اسکرول، رفتار آن به fixed تبدیل میشود.
وقتی از مقدار 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 برای 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، عنصر نسبت به کل پنجره مرورگر موقعیتدهی میشود. این بدان معناست که عنصر با اسکرول کردن صفحه در همان موقعیت ثابت میماند و حرکت نمیکند.
< div class="fixed-box" > من یک باکس ثابت هستم < / div >
.fixed-box {
position: fixed;
bottom: 0;
right: 0;
background-color: orange;
padding: 15px;
color: white;
}
در اینجا:
position: fixed باعث میشود که عنصر همواره در انتهای سمت راست و پایین صفحه ثابت بماند، حتی زمانی که کاربر صفحه را اسکرول میکند.
موارد استفاده از fixed شامل ساختن نوار ابزار ثابت یا دکمههای تماس سریع در پایین صفحه است.
مقدار 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: شروع کار و ساختاردهی کامپوننتها
28م شهریور 1402
مطالعه بیشتر
آموزش ساخت ماشین حساب با جاوا اسکریپت: راهنمای کامل با مثالهای کاربردی
4م آبان 1403
مطالعه بیشتر
آموزش استفاده از ماژولها (Modules) در جاوا اسکریپت: آشنایی با ES6 Modules - راهنمای کامل
5م آبان 1403
مطالعه بیشتر
آموزش جامع توابع در جاوا اسکریپت: نحوه تعریف، فراخوانی و بازگشت مقادیر
2م بهمن 1402
مطالعه بیشتر
تفاوت Callbacks و Promises در جاوا اسکریپت: مقایسه جامع با مثالها
30م مهر 1403
مطالعه بیشتر
استفاده از overflow در CSS برای مدیریت محتوای اضافی: راهنمای کامل و کاربردی
11م آبان 1403
مطالعه بیشتر
کار با تصاویر SVG در CSS: کنترل استایل و استفاده از گرافیکهای مقیاسپذیر
16م آبان 1403
مطالعه بیشتر
آشنایی با Inheritance در CSS: اصول وراثت و مدیریت استایلها
12م آبان 1403
مطالعه بیشتر
آموزش ساخت یک گالری تصویر با استفاده از جاوا اسکریپت: راهنمای گام به گام
3م آبان 1403
مطالعه بیشتر
مدیریت خطاها در Async/Await و Promises در جاوا اسکریپت: راهنمای کامل با مثالهای عملی
30م مهر 1403
مطالعه بیشتر
مفهوم متغیرها و انواع داده در جاوا اسکریپت: راهنمای جامع برای مبتدیان
28م شهریور 1402
مطالعه بیشتر
آموزش استایلدهی لیستها در CSS: طراحی و استایلدهی ul و ol
10م آبان 1403
مطالعه بیشتر
تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد