تعیین موقعیت عناصر صفحه

تغییر موقعیت عناصر صفحه با استفاده از CSS

position

ویژگی position به ما اجازه می دهد تا تعیین کنیم که آیا می خواهیم موقعیت یک عنصر در صفحه مشخص شود یا نه. اگر می خواهیم آن عنصر موقعیت مشخصی داشته باشد موقعیت عنصر را در صفحه تعیین می کند. چندین مقدار را می توان برای این ویژگی قرار داد. در اینجا می توانید این مقادیر را با کمی توضیح در مورد هر کدام ببینید:

  • static :
    این مقدار پیش فرضی است که در صورت تعریف نشدن position در صفحه استفاده می شود. با این مقدار اجزا در همان جایی که کد آنها را می نویسید دیده می شوند.
  • absolute :
    این مقدار به ما اجازه می دهد تا یک عنصر از صفحه را در هر موقعیتی نسبت به بالا، راست، پایین یا چپ صفحه که بخواهیم نمایش دهیم.
  • fixed :
    این گزینه به ما اجازه می دهد تا موقعیت یک عنصر صفحه را در پنجره مرورگر مشخص کنیم. در صورتی که برای یک عنصر از این ویژگی استفاده کنیم، موقعیت آن عنصر حتی در صورتی که به بالا و پایین صفحه برویم یا اندازه پنجره مرورگر را تغییر دهیم به همان صورت قبلی باقی می ماند. البته اینترنت اکسپلورر در ویندوز از این ویژگی پشتیبانی نمی کند ولی اینترنت اکسپلورر در مکینتاش همچنین مرورگرهای نت اسکیپ از این ویژگی پشتیبانی می کنند.

static

این ویژگی در حقیقت مشخص می کند که عنصر مربوطه باید در محلی که کد آن نوشته شده نمایش داده شود. وقتی که از این ویژگی استفاده می کنیم ویژگیهای top, left, bottom, right کاربردی ندارند.

این ویژگی به صورت پیش فرض از طرف مرورگر برای صفحه مورد استفاده قرار می گیرد.


fixed

اینترنت اکسپلورر بیشتر از سایر مرورگرها مورد استفاده قرار می گیرد و برای همین از نسخه 7 به بعد آن مشاهده می نماییم که در این مرورگرها هم از این ویژگی استفاده می گردد. ویژگی fixed در CSS ویژگی جالبی است. در اینجا فقط به ذکر یک مثال بسنده می کنیم:

در این مثال از ویژگی position:fixed برای تعیین موقعیت یک DIV استفاده می کنیم:

<div style="position:fixed; top:50%;left10px">اگر با مرورگر netscape,IE7,IE8 یا مرورگرهایی مثل firefox و opera از این صفحه بازدید کنید محتویات این div در میانه صفحه و سمت راست آن به نمایش در می آیند.</div>

اگر می خواهید ببینید این ویژگی چگونه کار می کند لینک زیر را با یکی از مرورگرهای Opera, Netscape یا Firefox , IE7 , IE8 مشاهده کنید و صفحه را با استفاده از اسکرول بار به بالا و پایین ببرید:

استفاده از ویژگی position:fixed ( لینک در پنجره جدید باز می شود ).


absolute

ویژگی position:absolute مشخص می کند که عنصر مربوطه باید در محل تعیین شده به نمایش در آید نه محلی که کد آن نوشته شده است.

در اینجا می توانید یک مثال را در مورد استفاده از ویژگی position:absolute در صفحه ببینید:

<div style="position:absolute; top:0px; right:0px; border: #fff 2px solid; width:350px; color:#fff; background-color:#3399cc; height: 40px;">این div در موقعیت تعیین شده در کد آن نمایش داده می شود.</div>

همانطور که در کد بالا می بینید برای DIV موقعیتی با فاصله 0 پیکسل از بالای صفحه و 0 پیکسل از سمت راست صفحه تعیین کرده ایم. با کلیک کردن بر روی لینک زیر می توانید نتیجه را مشاهده کنید:

استفاده از absolute برای ویژگی position ( لینک در یک پنجره جدید باز خواهد شد ).


top

این ویژگی موقعیت یک عنصر را از بالای صفحه تعیین می کند.( ویژگیهای top, left, bottom, right بیشتر زمانی مورد استفاده قرار می گیرند که برای یک عنصر ویژگی position تعیین شده باشد. )

در مثال قبل همانطور که ملاحظه می کنید از ویژگی top:0px استفاده شده است که این ویژگی معین می کند که DIV با فاصله 0 پیکسل از بالای پنجره مرورگر به نمایش در می آید.

مقداری که برای ویژگیهای top, bottom, left, right در نظر گرفته می شود به صورت می تواند باشد. یا به صورت عددی در واحد پیکسل که در این صورت باید پس از عدد مربوطه از حروف اختصاری px استفاده شود یا به صورت درصد که پس از عدد با ید از علامت درصد (%) استفاده شود.


bottom

کاربردی همانند ویژگی بالا دارد با این تفاوت که میزان فاصله عناصر را از پایین پنجره مرورگر مشخص می کند.در مثال بعدی از این ویژگی استفاده خواهیم کرد.


right

این ویژگی فاصله عناصر را از سمت راست صفحه تعیین می کند. همانطور که در مثال قبل می بینید، از این ویژگی به صورت right:0px استفاده شده است یعنی DIV مربوطه با فاصله 0 پیکسل از سمت راست پنجره مرورگر قرار خواهد گرفت.


left

این ویژگی موقعیت عنصر را از سمت چپ پنجره مرورگر تعیین می کند.

در مثال زیر از ویژگیهای bottom و left برای همان DIV مثال قبل استفاده می کنیم:

<div style="position:absolute; bottom:0px; left:0px; border:#fff 2px solid; width:350px; color:#fff; background-color:#3399cc; height: 150px;">این div در موقعیت تعیین شده در کد آن نمایش داده می شود.</div>

برای اینکه نتیجه را مشاهده کنید لینک زیر را کلیک کنید:

استفاده از ویژگیهای bottom و left ( لینک در پنجره جدید باز می شود ).

در مثال ذکر شده DIV به اندازه 0 پیکسل از پایین و 0 پیکسل از سمت چپ پنجره مرورگر فاصله دارد.

حاشیه و تو رفتگی عناصر صفحه

تنظیم حاشیه و فاصله از لبه در عناصر صفحه

Margin & Padding

margin-left

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

<div style="margin-left:200px; border:double">این DIV دویست پیکسل از سمت چپ صفحه فاصله دارد.</div>

همانطور که می بینید کد بالا یک DIV را با کادر مضاعف و 200 پیکسل حاشیه از چپ نشان می دهد:

این DIV دویست پیکسل از سمت چپ صفحه فاصله دارد.

margin-right

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

<div style="margin-right:200px; border:double">این DIV دویست پیکسل از سمت راست صفحه فاصله دارد.</div>

همانطور که می بینید کد بالا یک DIV را با کادر مضاعف و 200 پیکسل حاشیه از راست نشان می دهد:

این DIV دویست پیکسل از سمت راست صفحه فاصله دارد.

margin-top

این گزینه هم مانند گزینه های بالا کار می کند با این تفاوت که میزان حاشیه را از بالای صفحه تعیین می کند:

<div style="margin-top:100px; border:double">این DIV صد پیکسل از بالای صفحه فاصله دارد.</div>
این DIV صد پیکسل از بالای صفحه فاصله دارد.

margin-bottom

این گزینه هم مانند گزینه های بالا کار می کند با این تفاوت که میزان حاشیه را از پایین صفحه تعیین می کند:

<div style="margin-bottom:100px; border:double">این DIV صد پیکسل از پایین صفحه فاصله دارد.</div>
این DIV صد پیکسل از پایین صفحه فاصله دارد.

Padding

padding-right

پارامتر padding در CSS مشابه شناسه cellpadding در جدولهاست که با این تفاوت که می توان آنرا برای بالا، پایین، چپ و راست به صورت جداگانه تعریف کرد به جای اینکه به صورت یکجا تعیین شود. در اینجا می توانید یک نمونه از padding را که برای راست تعریف شده است را ببینید:

<div style="padding-right:100px; border-style:double">برای این DIV معادل 100 پیکسل padding تعریف شده است.</div>

می توانید نتیجه را در اینجا مشاهده کنید:

برای این DIV معادل 100 پیکسل padding تعریف شده است.

padding-top

مانند قسمت قبل است با این تفاوت که به جای راست برای بالا تعریف می شود:

<div style="padding-top:30px; border-style:double">برای این DIV معادل 30 پیکسل padding تعریف شده است.</div>

می توانید نتیجه را در اینجا مشاهده کنید:

برای این DIV معادل 30 پیکسل padding تعریف شده است.

padding-left

مانند padding-right است با این تفاوت که برای چپ تعیین می شود.


padding-bottom

مانند padding-top است با این تفاوت که برای پایین تعیین می شود.


به یاد داشته باشید که در صورتی که پارامتر padding بدون right, left, top یا bottom به کار رود مقدار وارد شده برای هر چهار جهت مورد استفاده قرار می گیرد، البته در مورد margin هم به همین صورت است:

<div style="padding:35px; width:250px; border-style:solid ">در این DIV پارامتر padding بر روی هر چهار جهت تأثیر میگذارد.</div>

این هم نتیجه:

در این DIV پارامتر padding بر روی هر چهار جهت تأثیر میگذارد.

ایجاد کادر برای عناصر

نحوه ایجاد کادر برای عناصر صفحه با استفاده از استایل

Border


border-style

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

  1. none
    با استفاده از این مقدار تعیین می کنیم که نمی خواهیم کادر داشته باشیم. در صورتی که مقداری غیر از none تعیین شود کادر خواهیم داشت.
  2. solid

    This DIV have a solid border
  3. dashed

    This DIV have a dashed border
  4. dotted

    This DIV have a dotted border
  5. double

    This DIV have a double border
  6. groove

    This DIV have a groove border
  7. hidden

    This DIV have a hidden border
  8. inset

    This DIV have a inset border
  9. outset

    This DIV have a outset border
  10. ridge

    This DIV have a ridge border

همانطور که می بینید عرض این کادرها بیش از آن چیزی است که ما نیاز داریم چون ما برای این کادرها عرضی مشخص نکردیم. اگر بخواهیم عرض این کادرها به اندازه مشخصی باشد باید از پارامتر width که قبلاً با آن آشنا شدیم استفاده کنیم. به مثال زیر توجه کنید:

<div style="width:300px; border-style:solid">برای این کادر عرض 300 پیکسل تعیین شده است.</div>

نتیجه به این صورت خواهد بود:

برای این کادر عرض 300 پیکسل تعیین شده است.


border-width

این پارامتر به ما اجازه می دهد تا میزان ضخامت کادرها را تعیین کنیم. این پارامتر می تواند مقادیر زیر را داشته باشد:

  1. مقدار عددی بر حسب پیکسل
    در این روش می توانیم مقدار ضخامت کادر را بر حسب پیکسل تعیین کنیم. به مثال زیر توجه کنید:
    <div style="border-style:solid; border-width:10px">این کادر 10 پیکسل ضخامت دارد</div>
    این هم کادر به دست آمده:
     
    این کادر 10 پیکسل ضخامت دارد
  2. thin
    این مقدار باعث خواهد شد تا کادر ما باریک باشد. مانند زیر:
    <div style="border-style:solid; border-width:thin">ضخامت این کادر thin در نظر گرفته شده است.</div>
    این هم کادر به دست آمده:
     
    ضخامت این کادر thin در نظر گرفته شده است.
  3. thick
    این مقدار به ما یک کادر ضخیم خواهد داد. به مثال زیر توجه کنید:
    <div style="border-style:solid; border-width:thick">ضخامت این کادر thick در نظر گرفته شده است.</div>
    نتیجه به صورت زیر خواهد بود:
     
    ضخامت این کادر thick در نظر گرفته شده است.


border-color

شما می توانید در صورت تمایل رنگ کادرهای خود را تغییر دهید. برای این کار باید از پارامتر border-color استفاده کنید. برای مقدار این پارامتر می توانید از نام رنگها استفاده کنید. در صورتی که از نام رنگها استفاده کنید فقط می توانید از تعداد کمی از رنگها استفاده کنید. راه دیگری که برای انتخاب رنگ وجود دارد استفاده از معادل هگزادسیمال رنگها است که نسبت به نام رنگها انعطاف پذیری بیشتری دارد. اگر جدول معادل هگزا دسیمال رنگها را می خواهید اینجا را کلیک کنید.
به یک نمونه برای تغییر رنگ کادر توجه کنید:

استفاده از نام رنگها:

<div style="border-style:solid; border-color:green">این کادر به رنگ سبز خواهد بود.</div>
این کادر به رنگ سبز خواهد بود.

استفاده از معادل هگزا دسیمال رنگها:

<div style="border-style:solid; border-color:#008000">این کادر به رنگ سبز خواهد بود.</div>
این کادر به رنگ سبز خواهد بود.